{
    "openapi":"3.0.0",
    "info":{
        "description":"You can use Oracle REST APIs to view and manage data stored in Launch Cloud Service.</p><p>Whether you're experienced with or new to REST, use this guide to find what you need, including:</p><ul><li>A quick start that walks you through a simple request example.</li><li>Use cases that provide real-world solutions with code examples.</li><li>Detailed descriptions for each REST API resource.</li></ul>",
        "version":"2026.03.30",
        "title":"REST API Reference for Launch Cloud Service",
        "x-summary":"You can use Oracle REST APIs to view and manage data stored in Launch Cloud Service."
    },
    "servers":[
        {
            "description":"TMF 620 Product Catalog Management Fusion Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
        },
        {
            "description":"TMF 633 Service Catalog Management Fusion Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/serviceCatalogManagement/v3"
        },
        {
            "description":"TMF 635 Usage Management Fusion Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/usageManagement/v2"
        },
        {
            "description":"TMF 671 Promotion Fusion Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/promotion/v2"
        },
        {
            "description":"TMF 671 Promotion Fusion Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/promotionManagement/v4"
        },
        {
            "description":"TMF 723 Policy Fusion Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/policyManagement/v5"
        },
        {
            "description":"Launch Non TMF Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/"
        },
        {
            "description":"Publish Server",
            "url":"http://{PublishServerHost}/api/productCatalogManagement/v1/"
        },
        {
            "description":"Launch Reference Management Service",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
        },
        {
            "description":"Launch REST Server",
            "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
        },
        {
            "description":"ADF REST Server",
            "url":"https://{FusionAppsHost}/crmRestApi/resources/11.13.18.05/"
        }
    ],
    "tags":[
        {
            "name":"Attributes",
            "description":"Attributes are used to create reusable characteristic definitions that can be used in Specifications."
        },
        {
            "name":"Balance Element",
            "description":"Balance element is the unit of measure for an element whose usage is measured. It can be a currency or non currency balance element"
        },
        {
            "name":"Catalogs",
            "description":"The Catalogs resource lets you view, create, update, and delete catalogs. A catalog is a logical container of categories. The product catalog is a collection of product offers and catalog categories. Each product offering in a product catalog combines pricing and availability information with product specifications that describe the relationships between products, the services used to realize the products, and the resources they require."
        },
        {
            "name":"Categories",
            "description":"The Categories resource lets you view, create, update, and delete categories. A category is used to group product offerings in logical containers. A product category can contain other categories."
        },
        {
            "name":"Channels",
            "description":"The operations from the Channels category."
        },
        {
            "name":"Content Management",
            "description":"The Content Management resource lets you view, create, update, and delete content files. It includes content files such as schema and mapping files."
        },
        {
            "name":"Custom Profile Specification",
            "description":"Custom Profile Specifications are general purpose specifications defined for use"
        },
        {
            "name":"Customer Profile Specification",
            "description":"The operations from the Customer Profile Specification category."
        },
        {
            "name":"Destinations",
            "description":"The Destination resource lets you view, create, update, and delete destinations. A destination is an end-system to which the catalog entity definition is published from the central enterprise product catalog."
        },
        {
            "name":"Entitlements",
            "description":"Entitlement is used to define Sales/Service Entitlements"
        },
        {
            "name":"Export Job",
            "description":"An Export Job resource represent a TASK used to export resources to a file"
        },
        {
            "name":"External Function Swagger",
            "description":"External Function Swagger is the contract that ensures the implementation of external functions that are used for transformations in mapping file."
        },
        {
            "name":"Geography Structure",
            "description":"Geography Structure is used to get the geography types of the country"
        },
        {
            "name":"Import Jobs",
            "description":"The Import Jobs resource lets you view and create import activities. An Import Job lets you import catalog entities from a JSON file (in TMF format) into a catalog."
        },
        {
            "name":"Lifecycle Configuration",
            "description":"A set of lifecycle management configurations"
        },
        {
            "name":"MarketSegments",
            "description":"The operations from the MarketSegments category."
        },
        {
            "name":"Notification Listeners",
            "description":"The Notification Listeners resource lets you create a project publishing event, and is implmeneted on the client side."
        },
        {
            "name":"Obsolete an entity",
            "description":"The operations from the Obsolete an entity category."
        },
        {
            "name":"Places",
            "description":"The operations from the Places category."
        },
        {
            "name":"Policy Rule",
            "description":"PolicyRule is a set of rules that are used to manage and control the state and state transitions of one or more managed objects."
        },
        {
            "name":"Price Tags",
            "description":"Price Tags is used to define price tags in launch."
        },
        {
            "name":"Pricelist",
            "description":"A list of offerings and prices pertaining to a set of customers"
        },
        {
            "name":"Pricing Logic Algorithm Specifications",
            "description":"The Price Logic Algorithm Specificaitons (PLA Specifications) resource lets you view, create, update, and delete PLA spefications. The PLA Specifications are used to support parametrized black-box pricing algorithms that are classified into the following groups, OneTimePLASpec, RecurringPLASpec, and UsagePLASpec."
        },
        {
            "name":"Pricing Logic Algorithms",
            "description":"The Price Logic Algorithms (PLA) resource lets you view, create, update, and delete PLAs. The PLA is an instance of Pricing Logic Algorithm specifications and uses some black-box pricing algorithm parameter values to calculate the final price of the product."
        },
        {
            "name":"Product Lines",
            "description":"The Product Lines resource lets you view, create, update, and delete product lines. A product line is used to group related product offers together."
        },
        {
            "name":"Product Offering Prices",
            "description":"The Product Offering Prices resource lets you view, create, update, and delete product offering prices. A product offering includes prices of product offerings and supports one time, recurring, usage price types, and advanced pricing schemes. These are the different pricing schemes that you associate with the product offer. For example a one-time, recurring, or usage fees."
        },
        {
            "name":"Product Offerings",
            "description":"The Product Offerings resource lets you view, create, update, and delete product offerings. A product offerig is an item that can be sold or ordered from the provider of the catalog or can also be tracked as an asset. A product offer can be a simple offer or bundle offer. A simple product offer has attributes, features, and characteristics that doesn't contain other product offers. A bundle product offers is assembly of two or more product offers."
        },
        {
            "name":"Product Rule",
            "description":"Product Rule is used to define different types of rules using condtions and expressions."
        },
        {
            "name":"Product Specifications",
            "description":"The Product Specifications resource lets you view, create, update, and delete product specifications. A product spefication is a detailed description of a tangible or intangible object that is externally available as a product offering to customers. A Product specification, also known as product type, consists of detailed description of tangible or intangible characteristics that are made externally available through the product offer. These are the attributes associated with a product offer and define the technical aspects of the product offer."
        },
        {
            "name":"Projects",
            "description":"The Projects resource lets you view, create, update, and delete projects. It lets you group entities for a release to market."
        },
        {
            "name":"Promotion",
            "description":"Promotion Resource is used to provide the additional discount, voucher, bonus or gift to the customer who meets the pre-defined criteria. Using promotion, the enterprise is able to attract the users and encourage more consumption, especially continuous purchases. Normally Promotion is not regarded as one type of product or product offering. It is often applied when the customer buys the product offerings with the price or amount surpassing the certain limit."
        },
        {
            "name":"Publish Jobs",
            "description":"The Publish Jobs resource lets you create a publishing job."
        },
        {
            "name":"Publishing Acknowledgements",
            "description":"The Publishing Acknowledgements resource is used to create publishing acknowledgements that are sent after creating a publishing job."
        },
        {
            "name":"Retire Entity",
            "description":"Retire Entity is used to retire an entity from the market."
        },
        {
            "name":"Service Specification",
            "description":"The Service Specification resource is used to view, create, update, and delete service specifications. A service specification lets you capture information about a service such as the service level, resource, party, and so on."
        },
        {
            "name":"Tax Service Provider",
            "description":"The Tax Service Provider resource is used to view, create, update, and delete tax service providers. A tax service provider represents simple and vendor specific tax codes that are used in prices."
        },
        {
            "name":"Third Party CMS Swagger",
            "description":"Third Party CMS Swagger is the contract that ensures the implementation of a headless Third Party CMS which Launch can leverage to manage content"
        },
        {
            "name":"Usage Specification",
            "description":"The Usage Specification resource is used to view, create, update, and delete usage specifications. A usage specification lets you capture information about a usage such as the usage specific characteristics and relationships."
        }
    ],
    "paths":{
        "/catalog":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Catalogs"
                ],
                "summary":"Get all catalogs",
                "operationId":"listCatalog",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/type"
                    },
                    {
                        "$ref":"#/components/parameters/baseType"
                    },
                    {
                        "$ref":"#/components/parameters/schemaLocation"
                    },
                    {
                        "$ref":"#/components/parameters/catalogType"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CatalogOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"catalog-get",
                "x-filename-id":"catalog-get"
            },
            "post":{
                "tags":[
                    "Catalogs"
                ],
                "summary":"Create a catalog",
                "operationId":"createCatalog",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CatalogOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CatalogOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"catalog-post",
                "x-filename-id":"catalog-post"
            }
        },
        "/catalog/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Catalogs"
                ],
                "summary":"Get a catalog",
                "operationId":"retrieveCatalog",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/depth"
                    },
                    {
                        "$ref":"#/components/parameters/catalogexpand"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CatalogOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"catalog-{id}-get",
                "x-filename-id":"catalog-id-get"
            },
            "patch":{
                "tags":[
                    "Catalogs"
                ],
                "summary":"Update a catalog",
                "operationId":"patchCatalog",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CatalogOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CatalogOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"catalog-{id}-patch",
                "x-filename-id":"catalog-id-patch"
            },
            "put":{
                "tags":[
                    "Catalogs"
                ],
                "summary":"Create or update a catalog",
                "operationId":"putCatalog",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CatalogOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CatalogOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"catalog-{id}-put",
                "x-filename-id":"catalog-id-put"
            },
            "delete":{
                "tags":[
                    "Catalogs"
                ],
                "summary":"Delete a catalog",
                "operationId":"deleteCatalog",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"catalog-{id}-delete",
                "x-filename-id":"catalog-id-delete"
            }
        },
        "/category":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Categories"
                ],
                "summary":"Get all categories",
                "operationId":"listCategory",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/type"
                    },
                    {
                        "$ref":"#/components/parameters/baseType"
                    },
                    {
                        "$ref":"#/components/parameters/schemaLocation"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CategoryOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"category-get",
                "x-filename-id":"category-get"
            },
            "post":{
                "tags":[
                    "Categories"
                ],
                "summary":"Create a category",
                "operationId":"createCategory",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CategoryOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CategoryOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"category-post",
                "x-filename-id":"category-post"
            }
        },
        "/category/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Categories"
                ],
                "summary":"Get a category",
                "operationId":"retrieveCategory",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CategoryOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"category-{id}-get",
                "x-filename-id":"category-id-get"
            },
            "patch":{
                "tags":[
                    "Categories"
                ],
                "summary":"Update a category",
                "operationId":"patchCategory",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CategoryOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CategoryOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"category-{id}-patch",
                "x-filename-id":"category-id-patch"
            },
            "put":{
                "tags":[
                    "Categories"
                ],
                "summary":"Create or update a category",
                "operationId":"putCategory",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CategoryOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CategoryOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"category-{id}-put",
                "x-filename-id":"category-id-put"
            },
            "delete":{
                "tags":[
                    "Categories"
                ],
                "summary":"Delete category",
                "operationId":"deleteCategory",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"category-{id}-delete",
                "x-filename-id":"category-id-delete"
            }
        },
        "/productSpecification":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Product Specifications"
                ],
                "summary":"Get all product specifications",
                "operationId":"listProductSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/type"
                    },
                    {
                        "$ref":"#/components/parameters/baseType"
                    },
                    {
                        "$ref":"#/components/parameters/schemaLocation"
                    },
                    {
                        "$ref":"#/components/parameters/isBundle"
                    },
                    {
                        "$ref":"#/components/parameters/productNumber"
                    },
                    {
                        "$ref":"#/components/parameters/brand"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productSpecification-get",
                "x-filename-id":"productspecification-get"
            },
            "post":{
                "tags":[
                    "Product Specifications"
                ],
                "summary":"Create a product specification",
                "operationId":"createProductSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productSpecification-post",
                "x-filename-id":"productspecification-post"
            }
        },
        "/productSpecification/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Product Specifications"
                ],
                "summary":"Get a product specification",
                "operationId":"retrieveProductSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productSpecification-{id}-get",
                "x-filename-id":"productspecification-id-get"
            },
            "patch":{
                "tags":[
                    "Product Specifications"
                ],
                "summary":"Update a product specification",
                "operationId":"patchProductSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productSpecification-{id}-patch",
                "x-filename-id":"productspecification-id-patch"
            },
            "put":{
                "tags":[
                    "Product Specifications"
                ],
                "summary":"Create or update a product specification",
                "operationId":"putProductSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productSpecification-{id}-put",
                "x-filename-id":"productspecification-id-put"
            },
            "delete":{
                "tags":[
                    "Product Specifications"
                ],
                "summary":"Delete a product specification",
                "operationId":"deleteProductSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productSpecification-{id}-delete",
                "x-filename-id":"productspecification-id-delete"
            }
        },
        "/productOffering":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Product Offerings"
                ],
                "summary":"Get all product offerings",
                "operationId":"listProductOffering",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/commercialName"
                    },
                    {
                        "$ref":"#/components/parameters/nameSearch"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/isBundle"
                    },
                    {
                        "$ref":"#/components/parameters/isSellable"
                    },
                    {
                        "$ref":"#/components/parameters/type"
                    },
                    {
                        "$ref":"#/components/parameters/baseType"
                    },
                    {
                        "$ref":"#/components/parameters/schemaLocation"
                    },
                    {
                        "$ref":"#/components/parameters/productOfferingInfo.productType"
                    },
                    {
                        "$ref":"#/components/parameters/productSpecification.id"
                    },
                    {
                        "$ref":"#/components/parameters/productSpecification.name"
                    },
                    {
                        "$ref":"#/components/parameters/productLine.id"
                    },
                    {
                        "$ref":"#/components/parameters/productLine.name"
                    },
                    {
                        "$ref":"#/components/parameters/pricelist.id"
                    },
                    {
                        "$ref":"#/components/parameters/pricelist.name"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductOfferingOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOffering-get",
                "x-filename-id":"productoffering-get"
            },
            "post":{
                "tags":[
                    "Product Offerings"
                ],
                "summary":"Create a product offering",
                "operationId":"createProductOffering",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferingOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOffering-post",
                "x-filename-id":"productoffering-post"
            }
        },
        "/productOffering/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Product Offerings"
                ],
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/depth"
                    },
                    {
                        "$ref":"#/components/parameters/poexpand"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/component"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "summary":"Get a product offering",
                "operationId":"retrieveProductOffering",
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOffering-{id}-get",
                "x-filename-id":"productoffering-id-get"
            },
            "patch":{
                "tags":[
                    "Product Offerings"
                ],
                "summary":"Update a product offering",
                "operationId":"patchProductOffering",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferingOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOffering-{id}-patch",
                "x-filename-id":"productoffering-id-patch"
            },
            "put":{
                "tags":[
                    "Product Offerings"
                ],
                "summary":"Create or update a product offering",
                "operationId":"putProductOffering",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferingOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOffering-{id}-put",
                "x-filename-id":"productoffering-id-put"
            },
            "delete":{
                "tags":[
                    "Product Offerings"
                ],
                "summary":"Delete a product offering",
                "operationId":"deleteProductOffering",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOffering-{id}-delete",
                "x-filename-id":"productoffering-id-delete"
            }
        },
        "/productLine":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Product Lines"
                ],
                "summary":"Get all product lines",
                "operationId":"listProductLine",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductLineOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productLine-get",
                "x-filename-id":"productline-get"
            },
            "post":{
                "tags":[
                    "Product Lines"
                ],
                "summary":"Create a product line",
                "operationId":"createProductLine",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductLineOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductLineOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productLine-post",
                "x-filename-id":"productline-post"
            }
        },
        "/productLine/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Product Lines"
                ],
                "summary":"Get a product line",
                "operationId":"retrieveProductLine",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductLineOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productLine-{id}-get",
                "x-filename-id":"productline-id-get"
            },
            "patch":{
                "tags":[
                    "Product Lines"
                ],
                "summary":"Update a product line",
                "operationId":"patchProductLine",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductLineOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductLineOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productLine-{id}-patch",
                "x-filename-id":"productline-id-patch"
            },
            "put":{
                "tags":[
                    "Product Lines"
                ],
                "summary":"Create or update a product line",
                "operationId":"putProductLine",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductLineOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductLineOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productLine-{id}-put",
                "x-filename-id":"productline-id-put"
            },
            "delete":{
                "tags":[
                    "Product Lines"
                ],
                "operationId":"deleteProductLine",
                "summary":"Delete a product line",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productLine-{id}-delete",
                "x-filename-id":"productline-id-delete"
            },
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ]
        },
        "/productOfferingPrice":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Product Offering Prices"
                ],
                "summary":"Get all product offering prices",
                "operationId":"listProductOfferingPrice",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/type"
                    },
                    {
                        "$ref":"#/components/parameters/baseType"
                    },
                    {
                        "$ref":"#/components/parameters/schemaLocation"
                    },
                    {
                        "$ref":"#/components/parameters/priceType"
                    },
                    {
                        "$ref":"#/components/parameters/recurringChargePeriodType"
                    },
                    {
                        "$ref":"#/components/parameters/recurringChargePeriodLength"
                    },
                    {
                        "$ref":"#/components/parameters/percentage"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/priceSubType"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/pricelist.id"
                    },
                    {
                        "$ref":"#/components/parameters/pricelist.name"
                    },
                    {
                        "$ref":"#/components/parameters/price.value"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferingPrice-get",
                "x-filename-id":"productofferingprice-get"
            },
            "post":{
                "tags":[
                    "Product Offering Prices"
                ],
                "summary":"Create a product offering price",
                "operationId":"createProductOfferingPrice",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferingPrice-post",
                "x-filename-id":"productofferingprice-post"
            }
        },
        "/productOfferingPrice/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Product Offering Prices"
                ],
                "operationId":"retrieveProductOfferingPrice",
                "summary":"Get a product offering price",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferingPrice-{id}-get",
                "x-filename-id":"productofferingprice-id-get"
            },
            "patch":{
                "tags":[
                    "Product Offering Prices"
                ],
                "summary":"Update a product offering price",
                "operationId":"patchProductOfferingPrice",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferingPrice-{id}-patch",
                "x-filename-id":"productofferingprice-id-patch"
            },
            "put":{
                "tags":[
                    "Product Offering Prices"
                ],
                "summary":"Create or update a product offering price",
                "operationId":"putProductOfferingPrice",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductOfferingPrice_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferingPrice-{id}-put",
                "x-filename-id":"productofferingprice-id-put"
            },
            "delete":{
                "tags":[
                    "Product Offering Prices"
                ],
                "summary":"Delete a product offering price",
                "operationId":"deleteProductOfferingPrice",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferingPrice-{id}-delete",
                "x-filename-id":"productofferingprice-id-delete"
            },
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ]
        },
        "/pricingLogicAlgorithm":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Pricing Logic Algorithms"
                ],
                "summary":"Get all pricing logic algorithms",
                "operationId":"listPla",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithm-get",
                "x-filename-id":"pricinglogicalgorithm-get"
            },
            "post":{
                "tags":[
                    "Pricing Logic Algorithms"
                ],
                "summary":"Create a pricing logic algorithm",
                "operationId":"createPla",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithm-post",
                "x-filename-id":"pricinglogicalgorithm-post"
            }
        },
        "/pricingLogicAlgorithm/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Pricing Logic Algorithms"
                ],
                "summary":"Get a pricing logic algorithm",
                "operationId":"retrievePla",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithm-{id}-get",
                "x-filename-id":"pricinglogicalgorithm-id-get"
            },
            "patch":{
                "tags":[
                    "Pricing Logic Algorithms"
                ],
                "summary":"Update a pricing logic algorithm",
                "operationId":"patchPla",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithm-{id}-patch",
                "x-filename-id":"pricinglogicalgorithm-id-patch"
            },
            "put":{
                "tags":[
                    "Pricing Logic Algorithms"
                ],
                "summary":"Create or update a pricing logic algorithm",
                "operationId":"putPla",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithm-{id}-put",
                "x-filename-id":"pricinglogicalgorithm-id-put"
            },
            "delete":{
                "tags":[
                    "Pricing Logic Algorithms"
                ],
                "summary":"Delete a pricing logic algorithm",
                "operationId":"deletePla",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithm-{id}-delete",
                "x-filename-id":"pricinglogicalgorithm-id-delete"
            }
        },
        "/pricingLogicAlgorithmSpecification":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Pricing Logic Algorithm Specifications"
                ],
                "summary":"Get all pricing logic algorithm specifications",
                "operationId":"listPlaSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithmSpecification-get",
                "x-filename-id":"pricinglogicalgorithmspecification-get"
            },
            "post":{
                "tags":[
                    "Pricing Logic Algorithm Specifications"
                ],
                "summary":"Create a pricing logic algorithm specification",
                "operationId":"createPlaSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithmSpecification-post",
                "x-filename-id":"pricinglogicalgorithmspecification-post"
            }
        },
        "/pricingLogicAlgorithmSpecification/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Pricing Logic Algorithm Specifications"
                ],
                "summary":"Get a pricing logic algorithm specification",
                "operationId":"retrievePlaSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithmSpecification-{id}-get",
                "x-filename-id":"pricinglogicalgorithmspecification-id-get"
            },
            "patch":{
                "tags":[
                    "Pricing Logic Algorithm Specifications"
                ],
                "summary":"Update a pricing logic algorithm specification",
                "operationId":"patchPlaSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithmSpecification-{id}-patch",
                "x-filename-id":"pricinglogicalgorithmspecification-id-patch"
            },
            "put":{
                "tags":[
                    "Pricing Logic Algorithm Specifications"
                ],
                "summary":"Create or update a pricing logic algorithm specification",
                "operationId":"putPlaSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification_Schemas"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithmSpecification-{id}-put",
                "x-filename-id":"pricinglogicalgorithmspecification-id-put"
            },
            "delete":{
                "tags":[
                    "Pricing Logic Algorithm Specifications"
                ],
                "summary":"Delete a pricing logic algorithm specification",
                "operationId":"deletePlaSpecification",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithmSpecification-{id}-delete",
                "x-filename-id":"pricinglogicalgorithmspecification-id-delete"
            }
        },
        "/project":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Projects"
                ],
                "operationId":"listProject",
                "summary":"Get all projects",
                "description":"This operation list or find Project entities",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProjectOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "403":{
                        "$ref":"#/components/responses/403"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"project-get",
                "x-filename-id":"project-get"
            },
            "post":{
                "operationId":"createProject",
                "summary":"Create a project",
                "description":"This operation creates a Project entity.",
                "tags":[
                    "Projects"
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProjectOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProjectOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "403":{
                        "$ref":"#/components/responses/403"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"project-post",
                "x-filename-id":"project-post"
            }
        },
        "/project/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "operationId":"retrieveProject",
                "summary":"Get a project",
                "description":"This operation retrieves a Project entity. Attribute selection is enabled for all first level attributes.",
                "tags":[
                    "Projects"
                ],
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"Success",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProjectOracle"
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "403":{
                        "$ref":"#/components/responses/403"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"project-{id}-get",
                "x-filename-id":"project-id-get"
            },
            "patch":{
                "operationId":"patchProject",
                "summary":"Update a project",
                "description":"This operation updates partially a Project entity.",
                "tags":[
                    "Projects"
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProjectOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Updated",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProjectOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "403":{
                        "$ref":"#/components/responses/403"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"project-{id}-patch",
                "x-filename-id":"project-id-patch"
            },
            "put":{
                "operationId":"putProject",
                "summary":"Create or update a project",
                "description":"This operation updates partially a Project entity.",
                "tags":[
                    "Projects"
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProjectOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Ok",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProjectOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "403":{
                        "$ref":"#/components/responses/403"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"project-{id}-put",
                "x-filename-id":"project-id-put"
            },
            "delete":{
                "operationId":"deleteProject",
                "summary":"Delete a project",
                "description":"This operation deletes a Project entity.",
                "tags":[
                    "Projects"
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "403":{
                        "$ref":"#/components/responses/403"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"project-{id}-delete",
                "x-filename-id":"project-id-delete"
            },
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ]
        },
        "/policyRule":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/policyManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Policy Rule"
                ],
                "summary":"Get all policy rules",
                "operationId":"listPolicyRule",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PolicyRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"policyRule-get",
                "x-filename-id":"policyrule-get"
            },
            "post":{
                "tags":[
                    "Policy Rule"
                ],
                "summary":"Create a policy rule",
                "operationId":"createPolicyRule",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PolicyRuleOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PolicyRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"policyRule-post",
                "x-filename-id":"policyrule-post"
            }
        },
        "/policyRule/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/policyManagement/v5"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Policy Rule"
                ],
                "summary":"Get a policy rule",
                "operationId":"retrievePolicyRule",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PolicyRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"policyRule-{id}-get",
                "x-filename-id":"policyrule-id-get"
            },
            "patch":{
                "tags":[
                    "Policy Rule"
                ],
                "summary":"Update a policy rule",
                "operationId":"patchPolicyRule",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PolicyRuleOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PolicyRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"policyRule-{id}-patch",
                "x-filename-id":"policyrule-id-patch"
            },
            "put":{
                "tags":[
                    "Policy Rule"
                ],
                "summary":"Create or update a policy rule",
                "operationId":"putPolicyRule",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PolicyRuleOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PolicyRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"policyRule-{id}-put",
                "x-filename-id":"policyrule-id-put"
            },
            "delete":{
                "tags":[
                    "Policy Rule"
                ],
                "summary":"Delete a policy rule",
                "operationId":"deletePolicyRule",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"policyRule-{id}-delete",
                "x-filename-id":"policyrule-id-delete"
            }
        },
        "/schema":{
            "servers":[
                {
                    "description":"Launch REST Server",
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "post":{
                "tags":[
                    "Content Management"
                ],
                "summary":"Upload scheme file",
                "operationId":"createSchema",
                "requestBody":{
                    "content":{
                        "multipart/form-data":{
                            "schema":{
                                "type":"object",
                                "properties":{
                                    "primaryFile":{
                                        "description":"The file to upload",
                                        "type":"string"
                                    },
                                    "path":{
                                        "description":"path of the file to upload",
                                        "type":"string"
                                    }
                                },
                                "required":[
                                    "primaryFile",
                                    "path"
                                ]
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/UploadSchemaOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"schema-post",
                "x-filename-id":"schema-post"
            },
            "put":{
                "tags":[
                    "Content Management"
                ],
                "summary":"Create or update a schema file",
                "operationId":"putSchema",
                "requestBody":{
                    "content":{
                        "multipart/form-data":{
                            "schema":{
                                "type":"object",
                                "properties":{
                                    "primaryFile":{
                                        "description":"The file to upload",
                                        "type":"string"
                                    },
                                    "path":{
                                        "description":"path of the file to upload",
                                        "type":"string"
                                    }
                                },
                                "required":[
                                    "primaryFile",
                                    "path"
                                ]
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/UploadSchemaOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"schema-put",
                "x-filename-id":"schema-put"
            }
        },
        "/schema/{name}":{
            "servers":[
                {
                    "description":"Launch REST Server",
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "get":{
                "tags":[
                    "Content Management"
                ],
                "summary":"Download schema file",
                "operationId":"retrieveSchema",
                "parameters":[
                    {
                        "name":"name",
                        "in":"path",
                        "description":"Name of the file to download",
                        "schema":{
                            "type":"string"
                        },
                        "required":true
                    },
                    {
                        "name":"path",
                        "in":"query",
                        "description":"path of the file to download",
                        "schema":{
                            "type":"string"
                        },
                        "required":true
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"schema-{name}-get",
                "x-filename-id":"schema-name-get"
            },
            "delete":{
                "tags":[
                    "Content Management"
                ],
                "summary":"Delete schema file",
                "operationId":"deleteSchema",
                "parameters":[
                    {
                        "name":"name",
                        "in":"path",
                        "description":"Name of the file to download",
                        "schema":{
                            "type":"string"
                        },
                        "required":true
                    },
                    {
                        "name":"path",
                        "in":"query",
                        "description":"path of the file to download",
                        "schema":{
                            "type":"string"
                        },
                        "required":true
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"schema-{name}-delete",
                "x-filename-id":"schema-name-delete"
            }
        },
        "/place":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Places"
                ],
                "summary":"Get all places",
                "operationId":"listPlaces",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PlaceOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"place-get",
                "x-filename-id":"place-get"
            },
            "post":{
                "tags":[
                    "Places"
                ],
                "summary":"Create a place",
                "operationId":"createPlace",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PlaceOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaceOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"place-post",
                "x-filename-id":"place-post"
            }
        },
        "/place/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Places"
                ],
                "summary":"Get a place",
                "operationId":"retrievePlace",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaceOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"place-{id}-get",
                "x-filename-id":"place-id-get"
            },
            "put":{
                "tags":[
                    "Places"
                ],
                "summary":"Create or update a place",
                "operationId":"putPlace",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PlaceOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaceOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"place-{id}-put",
                "x-filename-id":"place-id-put"
            },
            "patch":{
                "tags":[
                    "Places"
                ],
                "summary":"Update a place",
                "operationId":"patchPlace",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PlaceOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PlaceOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"place-{id}-patch",
                "x-filename-id":"place-id-patch"
            },
            "delete":{
                "tags":[
                    "Places"
                ],
                "summary":"Delete a place",
                "operationId":"deletePlace",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"place-{id}-delete",
                "x-filename-id":"place-id-delete"
            }
        },
        "/marketSegment":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "MarketSegments"
                ],
                "summary":"Get all market segments",
                "operationId":"listMarketSegments",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/MarketSegmentOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"marketSegment-get",
                "x-filename-id":"marketsegment-get"
            },
            "post":{
                "tags":[
                    "MarketSegments"
                ],
                "summary":"Create a market segment",
                "operationId":"createMarketSegment",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/MarketSegmentOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/MarketSegmentOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"marketSegment-post",
                "x-filename-id":"marketsegment-post"
            }
        },
        "/marketSegment/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "MarketSegments"
                ],
                "summary":"Get a market segment",
                "operationId":"retrieveMarketSegment",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/MarketSegmentOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"marketSegment-{id}-get",
                "x-filename-id":"marketsegment-id-get"
            },
            "put":{
                "tags":[
                    "MarketSegments"
                ],
                "summary":"Create or update a market segment",
                "operationId":"putMarketSegment",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/MarketSegmentOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/MarketSegmentOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"marketSegment-{id}-put",
                "x-filename-id":"marketsegment-id-put"
            },
            "patch":{
                "tags":[
                    "MarketSegments"
                ],
                "summary":"Update a market segment",
                "operationId":"patchMarketSegment",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/MarketSegmentOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/MarketSegmentOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"marketSegment-{id}-patch",
                "x-filename-id":"marketsegment-id-patch"
            },
            "delete":{
                "tags":[
                    "MarketSegments"
                ],
                "summary":"Delete a market segment",
                "operationId":"deleteMarketSegment",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"marketSegment-{id}-delete",
                "x-filename-id":"marketsegment-id-delete"
            }
        },
        "/priceTag":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Price Tags"
                ],
                "summary":"Get all price tags",
                "operationId":"listPriceTags",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    },
                    {
                        "$ref":"#/components/parameters/priceTagRules.productType"
                    },
                    {
                        "$ref":"#/components/parameters/priceTagRules.unitOfMeasure"
                    },
                    {
                        "$ref":"#/components/parameters/priceTagRules.balanceElementCode"
                    },
                    {
                        "$ref":"#/components/parameters/priceTagRules.serviceSpecification.id"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PriceTagOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"priceTag-get",
                "x-filename-id":"pricetag-get"
            },
            "post":{
                "tags":[
                    "Price Tags"
                ],
                "summary":"Create a price tag",
                "operationId":"createPriceTag",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PriceTagOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PriceTagOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"priceTag-post",
                "x-filename-id":"pricetag-post"
            }
        },
        "/priceTag/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Price Tags"
                ],
                "summary":"Get a price tag",
                "operationId":"retrievePriceTag",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PriceTagOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"priceTag-{id}-get",
                "x-filename-id":"pricetag-id-get"
            },
            "put":{
                "tags":[
                    "Price Tags"
                ],
                "summary":"Create or update a price tag",
                "operationId":"putPriceTag",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PriceTagOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PriceTagOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"priceTag-{id}-put",
                "x-filename-id":"pricetag-id-put"
            },
            "patch":{
                "tags":[
                    "Price Tags"
                ],
                "summary":"Update a price tag",
                "operationId":"patchPriceTag",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PriceTagOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PriceTagOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"priceTag-{id}-patch",
                "x-filename-id":"pricetag-id-patch"
            },
            "delete":{
                "tags":[
                    "Price Tags"
                ],
                "summary":"Delete a price tag",
                "operationId":"deletePriceTag",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"priceTag-{id}-delete",
                "x-filename-id":"pricetag-id-delete"
            }
        },
        "/entitlement":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "get":{
                "tags":[
                    "Entitlements"
                ],
                "summary":"Get all entitlements",
                "operationId":"listEntitlements",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/EntitlementOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"entitlement-get",
                "x-filename-id":"entitlement-get"
            },
            "post":{
                "tags":[
                    "Entitlements"
                ],
                "summary":"Create a entitlement",
                "operationId":"createEntitlement",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/EntitlementOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/EntitlementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"entitlement-post",
                "x-filename-id":"entitlement-post"
            }
        },
        "/entitlement/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Entitlements"
                ],
                "summary":"Get a entitlement",
                "operationId":"retrieveEntitlement",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/EntitlementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"entitlement-{id}-get",
                "x-filename-id":"entitlement-id-get"
            },
            "put":{
                "tags":[
                    "Entitlements"
                ],
                "summary":"Create or update a entitlement",
                "operationId":"putEntitlement",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/EntitlementOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/EntitlementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"entitlement-{id}-put",
                "x-filename-id":"entitlement-id-put"
            },
            "patch":{
                "tags":[
                    "Entitlements"
                ],
                "summary":"Update a entitlement",
                "operationId":"patchEntitlement",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/EntitlementOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/EntitlementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"entitlement-{id}-patch",
                "x-filename-id":"entitlement-id-patch"
            },
            "delete":{
                "tags":[
                    "Entitlements"
                ],
                "summary":"Delete a entitlement",
                "operationId":"deleteEntitlement",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"entitlement-{id}-delete",
                "x-filename-id":"entitlement-id-delete"
            }
        },
        "/publishingAcknowledgement":{
            "servers":[
                {
                    "url":"http://{PublishServerHost}/api/productCatalogManagement/v1/"
                }
            ],
            "post":{
                "operationId":"publishingAcknowledgement",
                "summary":"Create a publishing acknowledgement",
                "description":"Receives the acknowledgment from spoke system and update the publishing status corresponding to the spoke system.",
                "tags":[
                    "Publishing Acknowledgements"
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PublishingAcknowledgement"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is processed successfully."
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishingAcknowledgement-post",
                "x-filename-id":"publishingacknowledgement-post"
            }
        },
        "/projectPublishEvent":{
            "servers":[
                {
                    "url":"http://{PublishServerHost}/api/productCatalogManagement/v1/"
                }
            ],
            "post":{
                "operationId":"listenToProjectPublishEvent",
                "summary":"Create a project publish event",
                "description":"Example of a client listener for receiving the notification ProjectPublishEvent",
                "tags":[
                    "Notification Listeners"
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProjectPublishEvent"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is processed successfully."
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"projectPublishEvent-post",
                "x-filename-id":"projectpublishevent-post"
            }
        },
        "/publishJob":{
            "servers":[
                {
                    "url":"http://{PublishServerHost}/api/productCatalogManagement/v1/"
                }
            ],
            "post":{
                "operationId":"publishJob",
                "summary":"Create a publish job",
                "description":"This operation creates a publishJob entity",
                "tags":[
                    "Publish Jobs"
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PublishJob_Create"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is processed successfully."
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "409":{
                        "$ref":"#/components/responses/409"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishJob-post",
                "x-filename-id":"publishjob-post"
            }
        },
        "/importJob":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "post":{
                "tags":[
                    "Import Jobs"
                ],
                "summary":"Create an import job",
                "description":"ImportJob Post",
                "operationId":"createImportJob",
                "responses":{
                    "201":{
                        "$ref":"#/components/responses/importjob-post-response"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    }
                },
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/importjob-post-request"
                            }
                        }
                    }
                },
                "x-internal-id":"importJob-post",
                "x-filename-id":"importjob-post"
            },
            "get":{
                "tags":[
                    "Import Jobs"
                ],
                "summary":"Get all import jobs",
                "description":"Get all import jobs",
                "operationId":"listImportJob",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/fileName"
                    },
                    {
                        "$ref":"#/components/parameters/createdBy"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ImportJobOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"importJob-get",
                "x-filename-id":"importjob-get"
            }
        },
        "/importJob/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Import Jobs"
                ],
                "summary":"Get an import job",
                "description":"ImportJob Get By Id",
                "operationId":"retrieveImportJob",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ImportJobOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"importJob-{id}-get",
                "x-filename-id":"importjob-id-get"
            }
        },
        "/exportJob":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Export Job"
                ],
                "summary":"Get all export jobs",
                "operationId":"listExportJob",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/createdBy"
                    },
                    {
                        "$ref":"#/components/parameters/filenamePrefix"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ExportJobOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"exportJob-get",
                "x-filename-id":"exportjob-get"
            },
            "post":{
                "tags":[
                    "Export Job"
                ],
                "summary":"Create an export job",
                "operationId":"createExportJob",
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ExportJobOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ExportJobOracle"
                            }
                        }
                    }
                },
                "x-internal-id":"exportJob-post",
                "x-filename-id":"exportjob-post"
            }
        },
        "/exportJob/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v5"
                }
            ],
            "get":{
                "tags":[
                    "Export Job"
                ],
                "summary":"Get an export job",
                "operationId":"retrieveExportJob",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ExportJobOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    },
                    "501":{
                        "$ref":"#/components/responses/501"
                    }
                },
                "x-internal-id":"exportJob-{id}-get",
                "x-filename-id":"exportjob-id-get"
            }
        },
        "/serviceSpecification":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/serviceCatalogManagement/v3"
                }
            ],
            "get":{
                "tags":[
                    "Service Specification"
                ],
                "summary":"Get all service specifications",
                "operationId":"listServiceSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ServiceSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"serviceSpecification-get",
                "x-filename-id":"servicespecification-get"
            },
            "post":{
                "tags":[
                    "Service Specification"
                ],
                "summary":"Create a service specification",
                "operationId":"createServiceSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ServiceSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ServiceSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"serviceSpecification-post",
                "x-filename-id":"servicespecification-post"
            }
        },
        "/serviceSpecification/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/serviceCatalogManagement/v3"
                }
            ],
            "get":{
                "tags":[
                    "Service Specification"
                ],
                "summary":"Get a service specification",
                "operationId":"retrieveServiceSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ServiceSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"serviceSpecification-{id}-get",
                "x-filename-id":"servicespecification-id-get"
            },
            "patch":{
                "tags":[
                    "Service Specification"
                ],
                "summary":"Update a service specification",
                "operationId":"patchServiceSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ServiceSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ServiceSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"serviceSpecification-{id}-patch",
                "x-filename-id":"servicespecification-id-patch"
            },
            "put":{
                "tags":[
                    "Service Specification"
                ],
                "summary":"Create or update a service specification",
                "operationId":"putServiceSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ServiceSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ServiceSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"serviceSpecification-{id}-put",
                "x-filename-id":"servicespecification-id-put"
            },
            "delete":{
                "tags":[
                    "Service Specification"
                ],
                "summary":"Delete a service specification",
                "operationId":"deleteServiceSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"serviceSpecification-{id}-delete",
                "x-filename-id":"servicespecification-id-delete"
            }
        },
        "/usageSpecification":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/usageManagement/v2"
                }
            ],
            "get":{
                "tags":[
                    "Usage Specification"
                ],
                "summary":"Get all usage specifications",
                "operationId":"listUsageSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/UsageSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"usageSpecification-get",
                "x-filename-id":"usagespecification-get"
            },
            "post":{
                "tags":[
                    "Usage Specification"
                ],
                "summary":"Create a usage specification",
                "operationId":"createUsageSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/UsageSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/UsageSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"usageSpecification-post",
                "x-filename-id":"usagespecification-post"
            }
        },
        "/usageSpecification/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/usageManagement/v2"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Usage Specification"
                ],
                "summary":"Get a usage specification",
                "operationId":"retrieveUsageSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/UsageSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"usageSpecification-{id}-get",
                "x-filename-id":"usagespecification-id-get"
            },
            "patch":{
                "tags":[
                    "Usage Specification"
                ],
                "summary":"Update a usage specification",
                "operationId":"patchUsageSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/UsageSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/UsageSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"usageSpecification-{id}-patch",
                "x-filename-id":"usagespecification-id-patch"
            },
            "put":{
                "tags":[
                    "Usage Specification"
                ],
                "summary":"Create or update a usage specification",
                "operationId":"putUsageSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/UsageSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/UsageSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"usageSpecification-{id}-put",
                "x-filename-id":"usagespecification-id-put"
            },
            "delete":{
                "tags":[
                    "Usage Specification"
                ],
                "summary":"Delete a usage specification",
                "operationId":"deleteUsageSpecification",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"usageSpecification-{id}-delete",
                "x-filename-id":"usagespecification-id-delete"
            }
        },
        "/taxServiceProvider":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Tax Service Provider"
                ],
                "summary":"Get all tax service providers",
                "operationId":"listTaxServiceProvider",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/taxCodes.taxCode"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/TaxServiceProviderOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"taxServiceProvider-get",
                "x-filename-id":"taxserviceprovider-get"
            },
            "post":{
                "tags":[
                    "Tax Service Provider"
                ],
                "summary":"Create a tax service provider",
                "operationId":"createTaxServiceProvider",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/TaxServiceProviderOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/TaxServiceProviderOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"taxServiceProvider-post",
                "x-filename-id":"taxserviceprovider-post"
            }
        },
        "/taxServiceProvider/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Tax Service Provider"
                ],
                "summary":"Get a tax service provider",
                "operationId":"retrieveTaxServiceProvider",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/TaxServiceProviderOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"taxServiceProvider-{id}-get",
                "x-filename-id":"taxserviceprovider-id-get"
            },
            "patch":{
                "tags":[
                    "Tax Service Provider"
                ],
                "summary":"Update a tax service provider",
                "operationId":"patchTaxServiceProvider",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/TaxServiceProviderOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/TaxServiceProviderOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"taxServiceProvider-{id}-patch",
                "x-filename-id":"taxserviceprovider-id-patch"
            },
            "put":{
                "tags":[
                    "Tax Service Provider"
                ],
                "summary":"Create or update a tax service provider",
                "operationId":"putTaxServiceProvider",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/TaxServiceProviderOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/TaxServiceProviderOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"taxServiceProvider-{id}-put",
                "x-filename-id":"taxserviceprovider-id-put"
            },
            "delete":{
                "tags":[
                    "Tax Service Provider"
                ],
                "summary":"Delete a tax service provider",
                "operationId":"deleteTaxServiceProvider",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"taxServiceProvider-{id}-delete",
                "x-filename-id":"taxserviceprovider-id-delete"
            }
        },
        "/customerProfileSpecification":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Customer Profile Specification"
                ],
                "summary":"Get all customer profile specifications",
                "operationId":"listCustomerProfileSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/profileType"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customerProfileSpecification-get",
                "x-filename-id":"customerprofilespecification-get"
            },
            "post":{
                "tags":[
                    "Customer Profile Specification"
                ],
                "summary":"Create a  customer profile specification",
                "operationId":"createCustomerProfileSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customerProfileSpecification-post",
                "x-filename-id":"customerprofilespecification-post"
            }
        },
        "/customerProfileSpecification/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Customer Profile Specification"
                ],
                "summary":"Get a  customer profile specification",
                "operationId":"retrieveCustomerProfileSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customerProfileSpecification-{id}-get",
                "x-filename-id":"customerprofilespecification-id-get"
            },
            "patch":{
                "tags":[
                    "Customer Profile Specification"
                ],
                "summary":"Update a  customer profile specification",
                "operationId":"patchCustomerProfileSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customerProfileSpecification-{id}-patch",
                "x-filename-id":"customerprofilespecification-id-patch"
            },
            "put":{
                "tags":[
                    "Customer Profile Specification"
                ],
                "summary":"Create or update a  customer profile specification",
                "operationId":"putCustomerProfileSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customerProfileSpecification-{id}-put",
                "x-filename-id":"customerprofilespecification-id-put"
            },
            "delete":{
                "tags":[
                    "Customer Profile Specification"
                ],
                "summary":"Delete a  customer profile specification",
                "operationId":"deleteCustomerProfileSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customerProfileSpecification-{id}-delete",
                "x-filename-id":"customerprofilespecification-id-delete"
            }
        },
        "/publishDestination":{
            "servers":[
                {
                    "description":"ADF REST Server",
                    "url":"https://{FusionAppsHost}/crmRestApi/resources/11.13.18.05/PublishingAPI/"
                }
            ],
            "get":{
                "tags":[
                    "Destinations"
                ],
                "summary":"Get all destinations",
                "operationId":"listPublishDestination",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PublishDestinationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishDestination-get",
                "x-filename-id":"publishdestination-get"
            },
            "post":{
                "tags":[
                    "Destinations"
                ],
                "summary":"Create a destination",
                "operationId":"createPublishDestination",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PublishDestinationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PublishDestinationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishDestination-post",
                "x-filename-id":"publishdestination-post"
            }
        },
        "/publishDestination/{id}":{
            "servers":[
                {
                    "description":"ADF REST Server",
                    "url":"https://{FusionAppsHost}/crmRestApi/resources/11.13.18.05/PublishingAPI/"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Destinations"
                ],
                "summary":"Get a destination",
                "operationId":"retrievePublishDestination",
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PublishDestinationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishDestination-{id}-get",
                "x-filename-id":"publishdestination-id-get"
            },
            "patch":{
                "tags":[
                    "Destinations"
                ],
                "summary":"Update a destination",
                "operationId":"patchDestination",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PublishDestinationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PublishDestinationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishDestination-{id}-patch",
                "x-filename-id":"publishdestination-id-patch"
            },
            "put":{
                "tags":[
                    "Destinations"
                ],
                "summary":"Create or update a destination",
                "operationId":"putPublishDestination",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PublishDestinationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PublishDestinationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishDestination-{id}-put",
                "x-filename-id":"publishdestination-id-put"
            },
            "delete":{
                "tags":[
                    "Destinations"
                ],
                "summary":"Delete a destination",
                "operationId":"deletePublishDestination",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"publishDestination-{id}-delete",
                "x-filename-id":"publishdestination-id-delete"
            }
        },
        "/pricelist":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Pricelist"
                ],
                "summary":"Get all pricelists",
                "description":"List or find 'Pricelist' objects",
                "operationId":"listPricelist",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PricelistOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricelist-get",
                "x-filename-id":"pricelist-get"
            },
            "post":{
                "tags":[
                    "Pricelist"
                ],
                "description":"Create a pricelist",
                "operationId":"createPricelist",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricelistOracle_Create"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricelistOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "summary":"Create a pricelist",
                "x-internal-id":"pricelist-post",
                "x-filename-id":"pricelist-post"
            }
        },
        "/pricelist/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Pricelist"
                ],
                "summary":"Get a pricelist",
                "description":"Retrieves a 'Pricelist' by Id",
                "operationId":"retrievePricelist",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricelistOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricelist-{id}-get",
                "x-filename-id":"pricelist-id-get"
            },
            "patch":{
                "tags":[
                    "Pricelist"
                ],
                "summary":"Update a pricelist",
                "description":"Updates partially a 'Pricelist' by Id",
                "operationId":"patchPricelist",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricelistOracle_Create"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricelistOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricelist-{id}-patch",
                "x-filename-id":"pricelist-id-patch"
            },
            "put":{
                "tags":[
                    "Pricelist"
                ],
                "summary":"Create or update a pricelist",
                "description":"Creates or completely Updates a 'Pricelist' by Id",
                "operationId":"putPricelist",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricelistOracle_Create"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricelistOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricelist-{id}-put",
                "x-filename-id":"pricelist-id-put"
            },
            "delete":{
                "tags":[
                    "Pricelist"
                ],
                "summary":"Delete a pricelist",
                "description":"Delete a 'Pricelist' by Id",
                "operationId":"deletePricelist",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricelist-{id}-delete",
                "x-filename-id":"pricelist-id-delete"
            }
        },
        "/customProfileSpecification":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Custom Profile Specification"
                ],
                "summary":"Get all custom profile specifications",
                "description":"List or find 'Custom Profile Specification' objects",
                "operationId":"listCustomProfileSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customProfileSpecification-get",
                "x-filename-id":"customprofilespecification-get"
            },
            "post":{
                "tags":[
                    "Custom Profile Specification"
                ],
                "summary":"Create a custom profile specification",
                "description":"Creates a 'Custom Profile Specification'",
                "operationId":"createCustomProfileSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customProfileSpecification-post",
                "x-filename-id":"customprofilespecification-post"
            }
        },
        "/customProfileSpecification/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Custom Profile Specification"
                ],
                "summary":"Get a custom profile specification",
                "description":"Retrieves a 'Custom Profile Specification' by Id",
                "operationId":"retrieveCustomProfileSpecification",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customProfileSpecification-{id}-get",
                "x-filename-id":"customprofilespecification-id-get"
            },
            "patch":{
                "tags":[
                    "Custom Profile Specification"
                ],
                "summary":"Update a custom profile specification",
                "description":"Updates partially a 'Custom Profile Specification' by Id",
                "operationId":"patchCustomProfileSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customProfileSpecification-{id}-patch",
                "x-filename-id":"customprofilespecification-id-patch"
            },
            "put":{
                "tags":[
                    "Custom Profile Specification"
                ],
                "summary":"Create or updates a custom profile specification",
                "description":"Creates or completely Updates a 'Custom Profile Specification' by Id",
                "operationId":"putCustomProfileSpecification",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customProfileSpecification-{id}-put",
                "x-filename-id":"customprofilespecification-id-put"
            },
            "delete":{
                "tags":[
                    "Custom Profile Specification"
                ],
                "summary":"Delete a custom profile speicification",
                "description":"Delete a 'Custom Profile Specification' by Id",
                "operationId":"deleteCustomProfileSpecification",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customProfileSpecification-{id}-delete",
                "x-filename-id":"customprofilespecification-id-delete"
            }
        },
        "/balanceElement":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Balance Element"
                ],
                "summary":"Get all balance elements",
                "operationId":"listBalanceElement",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/balanceElementType"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/BalanceElementOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"balanceElement-get",
                "x-filename-id":"balanceelement-get"
            },
            "post":{
                "tags":[
                    "Balance Element"
                ],
                "summary":"Create a balance element",
                "operationId":"createBalanceElement",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/BalanceElementOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/BalanceElementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"balanceElement-post",
                "x-filename-id":"balanceelement-post"
            }
        },
        "/balanceElement/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Balance Element"
                ],
                "summary":"Get a balance element",
                "operationId":"retrieveBalanceElement",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/BalanceElementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"balanceElement-{id}-get",
                "x-filename-id":"balanceelement-id-get"
            },
            "patch":{
                "tags":[
                    "Balance Element"
                ],
                "summary":"Update a balance element",
                "operationId":"patchBalanceElement",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/BalanceElementOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/BalanceElementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"balanceElement-{id}-patch",
                "x-filename-id":"balanceelement-id-patch"
            },
            "put":{
                "tags":[
                    "Balance Element"
                ],
                "summary":"Create or update a balance element",
                "operationId":"putBalanceElement",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/BalanceElementOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/BalanceElementOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"balanceElement-{id}-put",
                "x-filename-id":"balanceelement-id-put"
            },
            "delete":{
                "tags":[
                    "Balance Element"
                ],
                "summary":"Delete a balance element",
                "operationId":"deleteBalanceElement",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"balanceElement-{id}-delete",
                "x-filename-id":"balanceelement-id-delete"
            }
        },
        "/productRule":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/"
                }
            ],
            "get":{
                "tags":[
                    "Product Rule"
                ],
                "summary":"Get all product rules",
                "operationId":"listProductRule",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/subject.id"
                    },
                    {
                        "$ref":"#/components/parameters/subject.name"
                    },
                    {
                        "$ref":"#/components/parameters/subject.AtReferredType"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductRuleOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productRule-get",
                "x-filename-id":"productrule-get"
            },
            "post":{
                "tags":[
                    "Product Rule"
                ],
                "summary":"Create a product rule",
                "operationId":"createProductRule",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductRuleOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productRule-post",
                "x-filename-id":"productrule-post"
            }
        },
        "/productRule/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Product Rule"
                ],
                "summary":"Get a product rule",
                "operationId":"retrieveProductRule",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productRule-{id}-get",
                "x-filename-id":"productrule-id-get"
            },
            "patch":{
                "tags":[
                    "Product Rule"
                ],
                "summary":"Update a product rule",
                "operationId":"patchProductRule",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductRuleOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productRule-{id}-patch",
                "x-filename-id":"productrule-id-patch"
            },
            "put":{
                "tags":[
                    "Product Rule"
                ],
                "summary":"Create or update a product rule",
                "operationId":"putProductRule",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductRuleOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ProductRuleOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productRule-{id}-put",
                "x-filename-id":"productrule-id-put"
            },
            "delete":{
                "tags":[
                    "Product Rule"
                ],
                "summary":"Delete a product rule",
                "operationId":"deleteProductRule",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productRule-{id}-delete",
                "x-filename-id":"productrule-id-delete"
            }
        },
        "/lifecycleConfiguration":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "get":{
                "tags":[
                    "Lifecycle Configuration"
                ],
                "summary":"Get all lifecycle configurations",
                "operationId":"listLifecycleConfiguration",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"lifecycleConfiguration-get",
                "x-filename-id":"lifecycleconfiguration-get"
            },
            "post":{
                "tags":[
                    "Lifecycle Configuration"
                ],
                "summary":"Create a lifecycle configuration",
                "operationId":"createLifecycleConfiguration",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"lifecycleConfiguration-post",
                "x-filename-id":"lifecycleconfiguration-post"
            }
        },
        "/lifecycleConfiguration/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Lifecycle Configuration"
                ],
                "summary":"Get a lifecycle configuration",
                "operationId":"retrieveLifecycleConfiguration",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"lifecycleConfiguration-{id}-get",
                "x-filename-id":"lifecycleconfiguration-id-get"
            },
            "patch":{
                "tags":[
                    "Lifecycle Configuration"
                ],
                "summary":"Update a lifecycle configuration",
                "operationId":"patchLifecycleConfiguration",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"lifecycleConfiguration-{id}-patch",
                "x-filename-id":"lifecycleconfiguration-id-patch"
            },
            "put":{
                "tags":[
                    "Lifecycle Configuration"
                ],
                "summary":"Create or update a lifecycle configuration",
                "operationId":"putLifecycleConfiguration",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/LifecycleConfigurationOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"lifecycleConfiguration-{id}-put",
                "x-filename-id":"lifecycleconfiguration-id-put"
            },
            "delete":{
                "tags":[
                    "Lifecycle Configuration"
                ],
                "summary":"Delete a lifecycle configuration",
                "operationId":"deleteLifecycleConfiguration",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"lifecycleConfiguration-{id}-delete",
                "x-filename-id":"lifecycleconfiguration-id-delete"
            }
        },
        "/promotion":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/promotionManagement/v4"
                }
            ],
            "get":{
                "tags":[
                    "Promotion"
                ],
                "summary":"Get all promotions",
                "operationId":"listPromotion",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/promotionType"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PromotionOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"promotion-get",
                "x-filename-id":"promotion-get"
            },
            "post":{
                "tags":[
                    "Promotion"
                ],
                "summary":"Create a promotion",
                "operationId":"createPromotion",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PromotionOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PromotionOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"promotion-post",
                "x-filename-id":"promotion-post"
            }
        },
        "/promotion/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/promotionManagement/v4"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Promotion"
                ],
                "summary":"Get a promotion",
                "operationId":"retrievePromotion",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PromotionOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"promotion-{id}-get",
                "x-filename-id":"promotion-id-get"
            },
            "patch":{
                "tags":[
                    "Promotion"
                ],
                "summary":"Update a promotion",
                "operationId":"patchPromotion",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PromotionOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PromotionOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"promotion-{id}-patch",
                "x-filename-id":"promotion-id-patch"
            },
            "put":{
                "tags":[
                    "Promotion"
                ],
                "summary":"Create or update a promotion",
                "operationId":"putPromotion",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PromotionOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PromotionOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"promotion-{id}-put",
                "x-filename-id":"promotion-id-put"
            },
            "delete":{
                "tags":[
                    "Promotion"
                ],
                "summary":"Delete a promotion",
                "operationId":"deletePromotion",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"promotion-{id}-delete",
                "x-filename-id":"promotion-id-delete"
            }
        },
        "/attribute":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Attributes"
                ],
                "summary":"Get all attributes",
                "operationId":"listAttribute",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/type"
                    },
                    {
                        "$ref":"#/components/parameters/baseType"
                    },
                    {
                        "$ref":"#/components/parameters/schemaLocation"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/AttributeOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"attribute-get",
                "x-filename-id":"attribute-get"
            },
            "post":{
                "tags":[
                    "Attributes"
                ],
                "summary":"Create an attribute",
                "operationId":"createAttribute",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/AttributeOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/AttributeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"attribute-post",
                "x-filename-id":"attribute-post"
            }
        },
        "/attribute/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Attributes"
                ],
                "summary":"Get an attribute",
                "operationId":"retrieveAttribute",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/AttributeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"attribute-{id}-get",
                "x-filename-id":"attribute-id-get"
            },
            "patch":{
                "tags":[
                    "Attributes"
                ],
                "summary":"Update an attribute",
                "operationId":"patchAttribute",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/AttributeOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/AttributeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"attribute-{id}-patch",
                "x-filename-id":"attribute-id-patch"
            },
            "put":{
                "tags":[
                    "Attributes"
                ],
                "summary":"Create or update an attribute",
                "operationId":"putAttribute",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/AttributeOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/AttributeOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"attribute-{id}-put",
                "x-filename-id":"attribute-id-put"
            },
            "delete":{
                "tags":[
                    "Attributes"
                ],
                "summary":"Delete an attribute",
                "operationId":"deleteAttribute",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/id"
                    }
                ],
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"attribute-{id}-delete",
                "x-filename-id":"attribute-id-delete"
            }
        },
        "/channel":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Channels"
                ],
                "summary":"Get all channels",
                "operationId":"listChannel",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/limit"
                    },
                    {
                        "$ref":"#/components/parameters/offset"
                    },
                    {
                        "$ref":"#/components/parameters/idQueryParam"
                    },
                    {
                        "$ref":"#/components/parameters/name"
                    },
                    {
                        "$ref":"#/components/parameters/description"
                    },
                    {
                        "$ref":"#/components/parameters/version"
                    },
                    {
                        "$ref":"#/components/parameters/lifecycleStatus"
                    },
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleForProject"
                    },
                    {
                        "$ref":"#/components/parameters/whereUsed"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ChannelOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"channel-get",
                "x-filename-id":"channel-get"
            },
            "post":{
                "tags":[
                    "Channels"
                ],
                "summary":"Create a channel",
                "operationId":"createChannel",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ChannelOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ChannelOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"channel-post",
                "x-filename-id":"channel-post"
            }
        },
        "/channel/{id}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "parameters":[
                {
                    "$ref":"#/components/parameters/id"
                }
            ],
            "get":{
                "tags":[
                    "Channels"
                ],
                "summary":"Get a channel",
                "operationId":"retrieveChannel",
                "parameters":[
                    {
                        "$ref":"#/components/parameters/fields"
                    },
                    {
                        "$ref":"#/components/parameters/eligibleVersionForProject"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ChannelOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"channel-{id}-get",
                "x-filename-id":"channel-id-get"
            },
            "patch":{
                "tags":[
                    "Channels"
                ],
                "summary":"Update a channel",
                "operationId":"patchChannel",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ChannelOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ChannelOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"channel-{id}-patch",
                "x-filename-id":"channel-id-patch"
            },
            "put":{
                "tags":[
                    "Channels"
                ],
                "summary":"Create or update a channel",
                "operationId":"putChannel",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ChannelOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/ChannelOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"channel-{id}-put",
                "x-filename-id":"channel-id-put"
            },
            "delete":{
                "tags":[
                    "Channels"
                ],
                "summary":"Delete a channel",
                "operationId":"deleteChannel",
                "responses":{
                    "204":{
                        "$ref":"#/components/responses/204"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"channel-{id}-delete",
                "x-filename-id":"channel-id-delete"
            }
        },
        "/productSpecifications":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Product Specifications"
                ],
                "summary":"Create or update an array of product specifications",
                "operationId":"putProductSpecifications",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductSpecifications"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productSpecifications-put",
                "x-filename-id":"productspecifications-put"
            }
        },
        "/productOfferings":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Product Offerings"
                ],
                "summary":"Create or update an array of product offerings",
                "operationId":"putProductOfferings",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferings"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductOfferingOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferings-put",
                "x-filename-id":"productofferings-put"
            }
        },
        "/productOfferingPrices":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Product Offering Prices"
                ],
                "summary":"Create or update an array of product offering prices",
                "operationId":"putProductOfferingPrices",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductOfferingPrices"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productOfferingPrices-put",
                "x-filename-id":"productofferingprices-put"
            }
        },
        "/productLines":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Product Lines"
                ],
                "summary":"Create or update an array of product lines",
                "operationId":"putProductLines",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductLines"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductLineOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productLines-put",
                "x-filename-id":"productlines-put"
            }
        },
        "/catalogs":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Catalogs"
                ],
                "summary":"Create or update an array of catalogs",
                "operationId":"putCatalogs",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/Catalogs"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CatalogOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"catalogs-put",
                "x-filename-id":"catalogs-put"
            }
        },
        "/categories":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Categories"
                ],
                "summary":"Create or update an array of catagories",
                "operationId":"putCategories",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/Categories"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CategoryOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"categories-put",
                "x-filename-id":"categories-put"
            }
        },
        "/pricingLogicAlgorithms":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Pricing Logic Algorithms"
                ],
                "summary":"Create or update an array of pricing logic algorithms",
                "operationId":"putPlas",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PLAs"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithms-put",
                "x-filename-id":"pricinglogicalgorithms-put"
            }
        },
        "/pricingLogicAlgorithmSpecifications":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Pricing Logic Algorithm Specifications"
                ],
                "summary":"Create or update an array of pricing logic algorithm specifications",
                "operationId":"putPlaSpecifications",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricingLogicAlgorithmSpecifications"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricingLogicAlgorithmSpecifications-put",
                "x-filename-id":"pricinglogicalgorithmspecifications-put"
            }
        },
        "/balanceElements":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Balance Element"
                ],
                "summary":"Create or update an array of balance elements",
                "operationId":"putBalanceElements",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/BalanceElements"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/BalanceElementOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"balanceElements-put",
                "x-filename-id":"balanceelements-put"
            }
        },
        "/pricelists":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Pricelist"
                ],
                "summary":"Create or update an array of pricelists",
                "description":"Creates or update an array of 'Pricelists'",
                "operationId":"putPricelists",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PriceLists"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PricelistOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"pricelists-put",
                "x-filename-id":"pricelists-put"
            }
        },
        "/customerProfileSpecifications":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Customer Profile Specification"
                ],
                "summary":"Create or update an array of customer profile specifications",
                "operationId":"putCustomerProfileSpecifications",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomerProfileSpecifications"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customerProfileSpecifications-put",
                "x-filename-id":"customerprofilespecifications-put"
            }
        },
        "/customProfileSpecifications":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Custom Profile Specification"
                ],
                "summary":"Create or update an array of custom profile specifications",
                "description":"Create or update an array of 'Custom Profile Specifications'",
                "operationId":"putCustomProfileSpecifications",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/CustomProfileSpecifications"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"customProfileSpecifications-put",
                "x-filename-id":"customprofilespecifications-put"
            }
        },
        "/promotions":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Promotion"
                ],
                "summary":"Create or update an array of promotions",
                "operationId":"putPromotions",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/Promotions"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PromotionOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"promotions-put",
                "x-filename-id":"promotions-put"
            }
        },
        "/entitlements":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "put":{
                "tags":[
                    "Entitlements"
                ],
                "summary":"Create or update an array of entitlements",
                "operationId":"putEntitlements",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/Entitlements"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/EntitlementOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"entitlements-put",
                "x-filename-id":"entitlements-put"
            }
        },
        "/priceTags":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Price Tags"
                ],
                "summary":"Create or update an array of price tags",
                "operationId":"putPriceTags",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PriceTags"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PriceTagOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"priceTags-put",
                "x-filename-id":"pricetags-put"
            }
        },
        "/usageSpecifications":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Usage Specification"
                ],
                "summary":"Create or update an array of usage specifications",
                "operationId":"putUsageSpecifications",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/UsageSpecifications"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/UsageSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"usageSpecifications-put",
                "x-filename-id":"usagespecifications-put"
            }
        },
        "/serviceSpecifications":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Service Specification"
                ],
                "summary":"Create or update an array of service specifications",
                "operationId":"putServiceSpecifications",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ServiceSpecifications"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ServiceSpecificationOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"serviceSpecifications-put",
                "x-filename-id":"servicespecifications-put"
            }
        },
        "/policyRules":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Policy Rule"
                ],
                "summary":"Create or update an array of policy rules",
                "operationId":"putPolicyRules",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PolicyRules"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PolicyRuleOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"policyRules-put",
                "x-filename-id":"policyrules-put"
            }
        },
        "/taxServiceProviders":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Tax Service Provider"
                ],
                "summary":"Create or update an array of tax service providers",
                "operationId":"putTaxServiceProviders",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/TaxServiceProviders"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/TaxServiceProviderOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"taxServiceProviders-put",
                "x-filename-id":"taxserviceproviders-put"
            }
        },
        "/productRules":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Product Rule"
                ],
                "summary":"Create or update an array of product rules",
                "operationId":"putProductRules",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ProductRules"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ProductRuleOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"productRules-put",
                "x-filename-id":"productrules-put"
            }
        },
        "/Attributes":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Attributes"
                ],
                "summary":"Create or update an array of attributes",
                "operationId":"putAttributes",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/Attributes"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/AttributeOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"Attributes-put",
                "x-filename-id":"attributes-put"
            }
        },
        "/channels":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Channels"
                ],
                "summary":"Create or update an array of channels",
                "operationId":"putChannels",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/Channels"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/ChannelOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"channels-put",
                "x-filename-id":"channels-put"
            }
        },
        "/places":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "Places"
                ],
                "summary":"Create or update an array of places",
                "operationId":"putPlaces",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/Places"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/PlaceOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"places-put",
                "x-filename-id":"places-put"
            }
        },
        "/marketSegments":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "put":{
                "tags":[
                    "MarketSegments"
                ],
                "summary":"Create or update an array of market segments",
                "operationId":"putMarketSegments",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/MarketSegments"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"Your request is successful and the resources have been created or updated.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "$ref":"#/components/schemas/MarketSegmentOracle"
                                    }
                                }
                            }
                        }
                    },
                    "400":{
                        "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"array",
                                    "items":{
                                        "anyOf":[
                                            {
                                                "$ref":"#/components/schemas/Error"
                                            },
                                            {
                                                "$ref":"#/components/schemas/BulkError"
                                            }
                                        ],
                                        "discriminator":{
                                            "propertyName":"@type",
                                            "mapping":{
                                                "Error":"#/components/schemas/Error",
                                                "BulkError":"#/components/schemas/BulkError"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"marketSegments-put",
                "x-filename-id":"marketsegments-put"
            }
        },
        "/geographyStructure/{countryCode}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "parameters":[
                {
                    "name":"countryCode",
                    "in":"path",
                    "description":"country code for which the geography structure is needed",
                    "schema":{
                        "type":"string"
                    },
                    "required":true
                }
            ],
            "get":{
                "tags":[
                    "Geography Structure"
                ],
                "operationId":"getGeographyStructure",
                "summary":"Get geography structure for the country",
                "description":"API get of geography structure for the country",
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/GeographyStructureOracle"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"geographyStructure-{countryCode}-get",
                "x-filename-id":"geographystructure-countrycode-get"
            }
        },
        "/retire/{resourceName}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "parameters":[
                {
                    "name":"resourceName",
                    "in":"path",
                    "description":"entity for which retire is initiated",
                    "schema":{
                        "type":"string"
                    },
                    "required":true
                }
            ],
            "post":{
                "tags":[
                    "Retire Entity"
                ],
                "operationId":"retireEntity",
                "summary":"Retire an entity",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/RetireSchemaOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"Your request is successful and a new resource has been created."
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"retire-{resourceName}-post",
                "x-filename-id":"retire-resourcename-post"
            }
        },
        "/obsolete/{resourceName}":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/v1"
                }
            ],
            "parameters":[
                {
                    "name":"resourceName",
                    "in":"path",
                    "description":"entity for which obsolete is initiated",
                    "schema":{
                        "type":"string"
                    },
                    "required":true
                }
            ],
            "put":{
                "tags":[
                    "Obsolete an entity"
                ],
                "operationId":"obsoleteEntity",
                "summary":"Obsolete an entity",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/ObsoleteSchemaOracle"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"OK"
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"obsolete-{resourceName}-put",
                "x-filename-id":"obsolete-resourcename-put"
            }
        },
        "/swagger/ThirdPartyCMSSwagger":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "Third Party CMS Swagger"
                ],
                "operationId":"getThirdPartyCMSSwagger",
                "summary":"Get the third party CMS swagger",
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"object"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"swagger-ThirdPartyCMSSwagger-get",
                "x-filename-id":"swagger-thirdpartycmsswagger-get"
            }
        },
        "/swagger/ExternalFunctionSwagger":{
            "servers":[
                {
                    "url":"https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1"
                }
            ],
            "get":{
                "tags":[
                    "External Function Swagger"
                ],
                "operationId":"getExternalFunctionSwagger",
                "summary":"Get the external function swagger for mapping file",
                "description":"API to get the External Function Swagger for mapping file.",
                "responses":{
                    "200":{
                        "description":"OK",
                        "content":{
                            "application/json":{
                                "schema":{
                                    "type":"object"
                                }
                            }
                        }
                    },
                    "400":{
                        "$ref":"#/components/responses/400"
                    },
                    "401":{
                        "$ref":"#/components/responses/401"
                    },
                    "404":{
                        "$ref":"#/components/responses/404"
                    },
                    "405":{
                        "$ref":"#/components/responses/405"
                    },
                    "500":{
                        "$ref":"#/components/responses/500"
                    }
                },
                "x-internal-id":"swagger-ExternalFunctionSwagger-get",
                "x-filename-id":"swagger-externalfunctionswagger-get"
            }
        }
    },
    "security":[
        {
            "BasicAuthentication":[
            ]
        }
    ],
    "components":{
        "securitySchemes":{
            "BasicAuthentication":{
                "type":"http",
                "scheme":"basic"
            }
        },
        "requestBodies":{
            "importjob-post-request":{
                "description":"The following table describes the body parameters in the request for this task.",
                "content":{
                    "multipart/form-data":{
                        "schema":{
                            "$ref":"#/components/schemas/importjob-post-request"
                        }
                    }
                }
            }
        },
        "parameters":{
            "Content-Type":{
                "in":"header",
                "name":"Content-Type",
                "schema":{
                    "type":"string"
                },
                "required":false
            },
            "path":{
                "in":"query",
                "name":"path",
                "schema":{
                    "type":"string"
                },
                "required":true
            },
            "id":{
                "name":"id",
                "description":"The unique identifier of the resource item.",
                "in":"path",
                "required":true,
                "schema":{
                    "type":"string"
                }
            },
            "limit":{
                "name":"limit",
                "description":"The number of resources to be returned in the response. The minimum value that can be specified is 1, and the maximum value that can be specified is 100,000. If the specified value is greater than 100,000, then it defaults to 100,000.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"integer"
                }
            },
            "name":{
                "name":"name",
                "description":"The name of the resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "commercialName":{
                "name":"commercialName",
                "description":"The commercialName of the resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "nameSearch":{
                "name":"nameSearch",
                "description":"The name or displayName of the resource for search.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "DestinationName":{
                "name":"DestinationName",
                "description":"The unique name of the destination. You can filter destinations using the desitnation name. For example, DestinationName=RecordName. The DestinationName is the target-name of the Fabric systemDescriptor (TTD) for the registered spoke system projectPublishEvent endpoint.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "description":{
                "name":"description",
                "description":"The description of the resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "component":{
                "name":"components",
                "description":"The lifecycle status and latest version of resource",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string",
                    "enum":[
                        "Launched",
                        "Latest"
                    ]
                }
            },
            "version":{
                "name":"version",
                "description":"The current version of the resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "lifecycleStatus":{
                "name":"lifecycleStatus",
                "description":"The current lifecycle status of the resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "type":{
                "name":"@type",
                "description":"The class type of the resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "baseType":{
                "name":"@baseType",
                "description":"The base class type of the resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "schemaLocation":{
                "name":"@schemaLocation",
                "description":"The link to the location where the scheme of the resource is defined.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "offset":{
                "name":"offset",
                "description":"The record number from which the retrieval starts. The default value is zero. If no value is specified, then it defaults to zero. The value zero indicates that the retrieval will start from the beginning of the collection.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "fields":{
                "name":"fields",
                "description":"The comma-separated field names that are returned in the response. The field names are the names that you specify when you create or retrieve a resource.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "productNumber":{
                "name":"productNumber",
                "description":"The unique identifier of the specification.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "isBundle":{
                "name":"isBundle",
                "description":"Contains one of the values, True or False. If False, then a single product offering is included. If True, then a bundle of product offerings is included.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "brand":{
                "name":"brand",
                "description":"The manufacturer or trademark of the specification.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "isSellable":{
                "name":"isSellable",
                "description":"Contains one of the values, True or False. If True, then the product offering is sold as a standalone product offering. If False, then the product offerings are sold within a bundle.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "depth":{
                "name":"depth",
                "description":"The depth at which a resource item occurs in a resource hierarchy.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "catalogexpand":{
                "name":"expand",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"array",
                    "items":{
                        "type":"string",
                        "enum":[
                            "catalog.category",
                            "catalog.category.subCategory"
                        ]
                    }
                },
                "explode":false
            },
            "poexpand":{
                "name":"expand",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"array",
                    "items":{
                        "type":"string",
                        "enum":[
                            "productOffering.bundledProductOffering",
                            "productOffering.bundledProductOffering.productOfferingPrice",
                            "productOffering.productOfferingPrice.bundledPopRelationship",
                            "productOffering.productOfferingPrice.pricingLogicAlgorithm",
                            "productOffering.productOfferingPrice.policy",
                            "productOffering.productOfferingTerm.productOfferingPrice",
                            "productOffering.productOfferingTerm.customProfileSpec"
                        ]
                    }
                },
                "explode":false,
                "description":"The sub-entities that are embedded into each resource item returned in the response. To avoid huge responses, any sub-entity that contains more than 500 items is not expanded, and it is returned as a usual link. The link can be used to retrieve the sub-entity in a separate call using the limit and offset parameters to control the response size."
            },
            "priceType":{
                "name":"priceType",
                "description":"The price types (such as a discount, penalty, allowance, and so on) applicable to a product offering.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "recurringChargePeriodType":{
                "name":"recurringChargePeriodType",
                "description":"The frequency (for example, weekly, monthly) for which the recurring charge is applied.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "recurringChargePeriodLength":{
                "name":"recurringChargePeriodLength",
                "description":"The period (for example, 1 week, 2 months) for which the recurring charge is applied. If set to zero, then the charge is not applicable.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "percentage":{
                "name":"percentage",
                "description":"The discount percentage applied for the product offering.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "priceSubType":{
                "name":"priceSubType",
                "description":"The price sub types (such as Installment, Lease, Down Payment etc) applicable to a product offering.",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                }
            },
            "specification":{
                "name":"specification",
                "in":"query",
                "required":false,
                "schema":{
                    "type":"string"
                },
                "description":"For filtering: product specification Id"
            },
            "idQueryParam":{
                "name":"id",
                "description":"The unique identifier of the resource item.",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "fileName":{
                "name":"fileName",
                "description":"Name of the file uploaded as part of job request",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "filenamePrefix":{
                "name":"filenamePrefix",
                "description":"User defined optional file name prefix",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "createdBy":{
                "name":"createdBy",
                "description":"Represents the job request submitter name.",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "taxCodes.taxCode":{
                "name":"taxCodes.taxCode",
                "description":"tax code value.",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "productOfferingInfo.productType":{
                "name":"productOfferingInfo.productType",
                "description":"Used to indicate the type of product.",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "productSpecification.id":{
                "name":"productSpecification.id",
                "description":"Filter Offerings based on Product Specification Id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "productSpecification.name":{
                "name":"productSpecification.name",
                "description":"Filter Offerings based on Product Specification Name",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "productLine.id":{
                "name":"productLine.id",
                "description":"Filter Offerings based on Product Line Id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "productLine.name":{
                "name":"productLine.name",
                "description":"Filter Offerings based on Product Line Name",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "pricelist.id":{
                "name":"pricelist.id",
                "description":"Filter Offerings based on Price List Id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "pricelist.name":{
                "name":"pricelist.name",
                "description":"Filter Offerings based on Price List Name",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "price.value":{
                "name":"price.value",
                "description":"Filter Offer Price based on price value",
                "in":"query",
                "schema":{
                    "type":"number"
                }
            },
            "whereUsed":{
                "name":"whereUsed",
                "description":"enrich objects with usedBy information",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "profileType":{
                "name":"profileType",
                "description":"Type of the profile",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "eligibleVersionForProject":{
                "name":"eligibleVersionForProject",
                "description":"Project Id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "eligibleForProject":{
                "name":"eligibleForProject",
                "description":"Project Id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "catalogType":{
                "name":"catalogType",
                "description":"Catalog Type",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "category":{
                "name":"category",
                "description":"Category",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "balanceElementType":{
                "name":"balanceElementType",
                "description":"Balance element Type",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "entityType":{
                "name":"entityType",
                "description":"Entity Type",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "promotionType":{
                "name":"promotionType",
                "description":"Promotion Type",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "subject.id":{
                "name":"subject.id",
                "description":"Filter Product Rules based on subject Id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "subject.name":{
                "name":"subject.name",
                "description":"Filter Product Rules based on subject name",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "subject.AtReferredType":{
                "name":"subject.@referredType",
                "description":"Filter Product Rules based on subject type",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "priceTagRules.productType":{
                "name":"priceTagRules.productType",
                "description":"Filter Price Tag based on product type",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "priceTagRules.unitOfMeasure":{
                "name":"priceTagRules.unitOfMeasure",
                "description":"Filter Price Tag based on unit of measure",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "priceTagRules.balanceElementCode":{
                "name":"priceTagRules.balanceElementCode",
                "description":"Filter Price Tag based on balance element code",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "priceTagRules.serviceSpecification.id":{
                "name":"priceTagRules.serviceSpecification.id",
                "description":"Filter Price Tag based on service specification id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "actionProjectId":{
                "name":"actionProjectId",
                "description":"Filter Project activity based on project id",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            },
            "userName":{
                "name":"userName",
                "description":"Filter Project activity based on username",
                "in":"query",
                "schema":{
                    "type":"string"
                }
            }
        },
        "responses":{
            "204":{
                "description":"The request has succeeded."
            },
            "400":{
                "description":"Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "401":{
                "description":"Your request isn't authorized. The authentication credentials included with this request are missing or invalid.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "403":{
                "description":"You don't have authorization to perform this request.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "404":{
                "description":"Your request includes a resource URI that doesn't exist.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "405":{
                "description":"HTTP action specified in the request (DELETE, GET, POST, PUT) isn't supported for this request URI.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "409":{
                "description":"The request can't be completed due to a conflict with the current state of the resource.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "500":{
                "description":"The server encountered something unexpected that prevented it from completing the request.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "501":{
                "description":"The server doesn't support the functionality required to fulfill the request.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/Error"
                        }
                    }
                }
            },
            "importjob-post-response":{
                "description":"The import job has been created successfully.",
                "content":{
                    "application/json":{
                        "schema":{
                            "$ref":"#/components/schemas/empty-response"
                        }
                    }
                }
            }
        },
        "schemas":{
            "ImportJob":{
                "title":"ImportJob",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"integer",
                        "format":"int64",
                        "description":"Unique identifier of the submitted job request"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the job request"
                    },
                    "completionDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Completed date-time of the job request"
                    },
                    "contentType":{
                        "type":"string",
                        "description":"Content type of the job request"
                    },
                    "creationDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Submission Date of the job request"
                    },
                    "errorLog":{
                        "type":"string",
                        "description":"Error Log for the job request"
                    },
                    "path":{
                        "type":"string",
                        "description":"Path of the job request file"
                    },
                    "url":{
                        "type":"string",
                        "description":"Url of the job request"
                    },
                    "status":{
                        "type":"string",
                        "description":"Status of the submitted job request",
                        "enum":[
                            "NOT_STARTED",
                            "RUNNING",
                            "SUCCEEDED",
                            "FAILED",
                            "COMPLETED",
                            "ERROR",
                            "BLOCKED",
                            "READY",
                            "CANCELLED",
                            "CANCELLING"
                        ]
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of Job Request."
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ImportJob":"#/components/schemas/ImportJob",
                        "ImportJobOracle":"#/components/schemas/ImportJobOracle"
                    }
                }
            },
            "ImportJobOracle":{
                "title":"ImportJobOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ImportJob"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "fileName":{
                                "type":"string",
                                "description":"file name of the submitted job request"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"submitter name of the job request"
                            },
                            "errorLogUrl":{
                                "type":"string",
                                "description":"URL of the error Log"
                            },
                            "importSummary":{
                                "type":"object",
                                "properties":{
                                    "id":{
                                        "type":"integer",
                                        "format":"int64",
                                        "description":"Identifier of the import job"
                                    },
                                    "totalImportObjects":{
                                        "type":"integer",
                                        "description":"Total count of the number of object imported"
                                    },
                                    "resources":{
                                        "type":"array",
                                        "items":{
                                            "$ref":"#/components/schemas/ImportSummaryResource"
                                        }
                                    }
                                }
                            }
                        }
                    }
                ]
            },
            "ExportJob":{
                "title":"ExportJob",
                "type":"object",
                "description":"Represents a task used to export resources to a file",
                "properties":{
                    "id":{
                        "type":"integer",
                        "format":"int64",
                        "description":"Identifier of the export job"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the export job"
                    },
                    "completionDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date at which the job was completed"
                    },
                    "contentType":{
                        "type":"string",
                        "description":"The format of the exported data"
                    },
                    "creationDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date at which the job was created"
                    },
                    "errorLog":{
                        "type":"string",
                        "description":"Reason for failure"
                    },
                    "path":{
                        "type":"string",
                        "description":"URL of the root resource acting as the source for streaming content to the file specified by the export job"
                    },
                    "query":{
                        "type":"string",
                        "description":"Used to scope the exported data"
                    },
                    "url":{
                        "type":"string",
                        "description":"URL of the file containing the data to be exported"
                    },
                    "status":{
                        "type":"string",
                        "description":"Status of the export job",
                        "enum":[
                            "NOT_STARTED",
                            "RUNNING",
                            "SUCCEEDED",
                            "FAILED",
                            "COMPLETED",
                            "ERROR",
                            "BLOCKED",
                            "READY",
                            "CANCELLED",
                            "CANCELLING"
                        ]
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ExportJob":"#/components/schemas/ExportJob",
                        "ExportJobOracle":"#/components/schemas/ExportJobOracle"
                    }
                }
            },
            "ExportJobOracle":{
                "title":"ExportJobOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ExportJob"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "createdBy":{
                                "type":"string",
                                "description":"submitter name of the job request"
                            },
                            "exportOptions":{
                                "$ref":"#/components/schemas/ExportOptionsOracle"
                            },
                            "exportSummary":{
                                "type":"object",
                                "properties":{
                                    "id":{
                                        "type":"integer",
                                        "format":"int64",
                                        "description":"Identifier of the export job"
                                    },
                                    "totalExportObjects":{
                                        "type":"integer",
                                        "description":"Total count of the number of object exported"
                                    },
                                    "resources":{
                                        "type":"array",
                                        "items":{
                                            "$ref":"#/components/schemas/ExportSummaryResource"
                                        }
                                    }
                                }
                            },
                            "errorLogUrl":{
                                "type":"string",
                                "description":"URL of the error Log"
                            }
                        },
                        "required":[
                            "exportOptions"
                        ]
                    }
                ]
            },
            "ExportOptionsOracle":{
                "title":"ExportOptionsOracle",
                "type":"object",
                "description":"Represents a task used to export resources to a file",
                "properties":{
                    "resourceType":{
                        "type":"array",
                        "description":"Type of the resource to be exported seperated by comma",
                        "items":{
                            "type":"string",
                            "enum":[
                                "productRule",
                                "package",
                                "commercial_bundle",
                                "service_bundle",
                                "service",
                                "device",
                                "accessory",
                                "productOffering",
                                "productOfferingPrice",
                                "priceplan",
                                "productLine",
                                "promotion",
                                "policyRule",
                                "pricingLogicAlgorithmSpecification",
                                "balanceElement",
                                "productSpecification",
                                "serviceSpecification",
                                "usageSpecification",
                                "customerProfileSpecification",
                                "pricelist",
                                "customProfileSpecification",
                                "taxServiceProvider",
                                "catalog",
                                "category",
                                "entitlement",
                                "priceTag"
                            ]
                        }
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Status of the lifecycle to be exported"
                    },
                    "lastUpdate":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "project":{
                        "type":"object",
                        "properties":{
                            "id":{
                                "type":"string",
                                "description":"Unique identifier of the project"
                            },
                            "name":{
                                "type":"string",
                                "description":"Name of the project"
                            }
                        }
                    },
                    "name":{
                        "type":"string",
                        "description":"for a given resource type this is the name of the resource"
                    },
                    "id":{
                        "type":"string",
                        "description":"for a given resource type this is the id of the resource"
                    },
                    "filenamePrefix":{
                        "type":"string",
                        "maxLength":30,
                        "description":"User defined optional file name prefix"
                    },
                    "exportReferenced":{
                        "type":"boolean",
                        "description":"if referenced objects to be exported"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    }
                }
            },
            "Catalog":{
                "title":"Catalog",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the Catalog"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the catalog"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the catalog"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of this catalog"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of catalog. For entity catalogs, this will be 'EntityCatalog'."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "version":{
                        "type":"string",
                        "description":"Catalog version"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "catalogType":{
                        "type":"string",
                        "description":"It indicates the type of catalog"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "category":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CategoryRef"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "Catalog":"#/components/schemas/Catalog",
                        "CatalogOracle":"#/components/schemas/CatalogOracle"
                    }
                }
            },
            "CatalogOracle":{
                "title":"CatalogOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/Catalog"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the catalog"
                            }
                        }
                    }
                ]
            },
            "Category":{
                "title":"Category",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the category"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the catalog"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "version":{
                        "type":"string",
                        "description":"Category version"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "isRoot":{
                        "type":"boolean",
                        "description":"If true, this Boolean indicates that the category is a root of categories"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the category"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the category"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Category"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"the base class type of the category"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"link to the schema describing this category"
                    },
                    "subCategory":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CategoryRef"
                        }
                    },
                    "parent":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CategoryRef"
                        }
                    },
                    "productOffering":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingRef"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "Category":"#/components/schemas/Category",
                        "CategoryOracle":"#/components/schemas/CategoryOracle"
                    }
                }
            },
            "CategoryOracle":{
                "title":"CategoryOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/Category"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the category"
                            }
                        }
                    }
                ]
            },
            "ProductOffering":{
                "title":"ProductOffering",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the productOffering"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the ProductOffering"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the productOffering"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the productOffering"
                    },
                    "isBundle":{
                        "type":"boolean",
                        "description":"isBundle determines whether a productOffering represents a single productOffering (false), or a bundle of productOfferings (true)."
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "statusReason":{
                        "type":"string",
                        "description":"Used to indicate the current status reason"
                    },
                    "subStatus":{
                        "type":"string",
                        "description":"sub status code"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "version":{
                        "type":"string",
                        "description":"ProductOffering version"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the product offering"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the product offering"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this product offering"
                    },
                    "isSellable":{
                        "type":"boolean",
                        "description":"A flag indicating if this product offer can be sold stand-alone for sale or not. If this flag is false it indicates that the offer can only be sold within a bundle."
                    },
                    "place":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PlaceRef"
                        }
                    },
                    "serviceLevelAgreement":{
                        "$ref":"#/components/schemas/SLARef"
                    },
                    "productSpecification":{
                        "$ref":"#/components/schemas/ProductSpecificationRef"
                    },
                    "channel":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ChannelRef"
                        }
                    },
                    "serviceCandidate":{
                        "$ref":"#/components/schemas/ServiceCandidateRefOracle"
                    },
                    "attachment":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/Attachment"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentRef"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "Attachment":"#/components/schemas/Attachment",
                                    "AttachmentOracle":"#/components/schemas/AttachmentOracle",
                                    "AttachmentRef":"#/components/schemas/AttachmentRef"
                                }
                            }
                        }
                    },
                    "category":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CategoryRef"
                        }
                    },
                    "resourceCandidate":{
                        "$ref":"#/components/schemas/ResourceCandidateRef"
                    },
                    "productOfferingTerm":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/ProductOfferingTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/ServiceEntitlementOfferTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/CommitmentTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/SubscriptionTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/PaymentTermOracle"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "ProductOfferingTermOracle":"#/components/schemas/ProductOfferingTermOracle",
                                    "ServiceEntitlementOfferTermOracle":"#/components/schemas/ServiceEntitlementOfferTermOracle",
                                    "CommitmentTermOracle":"#/components/schemas/CommitmentTermOracle",
                                    "SubscriptionTermOracle":"#/components/schemas/SubscriptionTermOracle",
                                    "PaymentTermOracle":"#/components/schemas/PaymentTermOracle"
                                }
                            }
                        }
                    },
                    "marketSegment":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/MarketSegmentRef"
                        }
                    },
                    "productOfferingPrice":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/ProductOfferingPriceRef"
                                },
                                {
                                    "$ref":"#/components/schemas/ProductOfferingPriceRefOracle"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "ProductOfferingPriceRef":"#/components/schemas/ProductOfferingPriceRef",
                                    "ProductOfferingPriceRefOracle":"#/components/schemas/ProductOfferingPriceRefOracle"
                                }
                            }
                        }
                    },
                    "agreement":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/AgreementRef"
                        }
                    },
                    "bundledProductOffering":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/BundledProductOffering"
                                },
                                {
                                    "$ref":"#/components/schemas/BundledProductOfferingChoiceOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/BundledProductOfferingOracle"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "BundledProductOffering":"#/components/schemas/BundledProductOffering",
                                    "BundledProductOfferingChoiceOracle":"#/components/schemas/BundledProductOfferingChoiceOracle",
                                    "BundledProductOfferingOracle":"#/components/schemas/BundledProductOfferingOracle"
                                }
                            }
                        }
                    },
                    "bundledGroupProductOffering":{
                        "type":"array",
                        "description":"A BundledGroupProductOffering. A group of ProductOfferings that can be selected for instantiation, e.g. between 2 and 7 from a list of 15 channel packs.",
                        "items":{
                            "$ref":"#/components/schemas/BundledGroupProductOfferingOracle"
                        }
                    },
                    "prodSpecCharValueUse":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecificationCharacteristicValueUseOracle"
                        }
                    },
                    "specCharValueUse":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/SpecCharValueUse"
                        }
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductOffering":"#/components/schemas/ProductOffering",
                        "ProductOfferingOracle":"#/components/schemas/ProductOfferingOracle"
                    }
                }
            },
            "ProductOfferingOracle":{
                "title":"ProductOfferingOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOffering"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "productLine":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductLineRef"
                                }
                            },
                            "productOfferingCharacteristic":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductOfferCharacteristicOracle"
                                }
                            },
                            "productOfferingInfo":{
                                "$ref":"#/components/schemas/ProductOfferingInfoOracle"
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "banner":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/BannerOracle"
                                }
                            },
                            "marketingFeature":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/FeatureOracle"
                                }
                            },
                            "approver":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ApproverRef"
                                }
                            },
                            "approvalInfo":{
                                "$ref":"#/components/schemas/ApprovalInfoOracle"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "pricelist":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PriceListGroupRefOracle"
                                }
                            },
                            "pricePlanRelationship":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PricePlanRelationshipOracle"
                                }
                            },
                            "approvalHistory":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ApprovalHistory"
                                }
                            },
                            "usedBy":{
                                "type":"array",
                                "readOnly":true,
                                "items":{
                                    "$ref":"#/components/schemas/UsedByRef"
                                }
                            },
                            "choiceRelationship":{
                                "$ref":"#/components/schemas/ChoiceRelationshipOracle"
                            },
                            "customProfileSpec":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            },
                            "customProfSpecCharValueUse":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfSpecCharValueUse"
                                }
                            },
                            "externalConfigurationProperties":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ExternalConfigurationPropertiesOracle"
                                }
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "searchTag":{
                                "type":"array",
                                "items":{
                                    "type":"string",
                                    "description":"searchTag"
                                }
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the productOffering"
                            },
                            "commercialName":{
                                "type":"string",
                                "description":"Commercial name of Product Offering"
                            },
                            "isDynamic":{
                                "type":"boolean",
                                "description":"Indicates if it is a dynamic Option Group"
                            },
                            "businessUnitId":{
                                "type":"number",
                                "description":"Indicates Business Unit to which the offer belongs."
                            },
                            "businessUnitName":{
                                "type":"string",
                                "description":"Indicates name of Business Unit to which the offer belongs."
                            },
                            "productOfferingRelationship":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductOfferingRelationship"
                                }
                            },
                            "policySpecificationTerm":{
                                "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                            }
                        },
                        "required":[
                            "productOfferingInfo"
                        ]
                    }
                ]
            },
            "UsedByRef":{
                "title":"UsedByRef",
                "type":"object",
                "description":"A reference to a resource that is aggregating another top-level resource.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the using item"
                    },
                    "href":{
                        "type":"string",
                        "description":"hyperlink reference of the using item"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the using item"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the using item"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The Class type of using item"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> the base (class) type of this REST resource"
                    },
                    "referenceType":{
                        "type":"string",
                        "description":"The entity type of using item",
                        "enum":[
                            "PACKAGE",
                            "COMMERCIAL_BUNDLE",
                            "SERVICE_BUNDLE",
                            "SERVICE",
                            "DEVICE",
                            "ACCESSORY",
                            "CHOICE",
                            "AGGREGATION",
                            "AWARD",
                            "DISCOUNT",
                            "TRADE_IN",
                            "COMPATIBILITY",
                            "ELIGIBILITY",
                            "MIGRATION",
                            "RECOMMENDATION",
                            "POLICY",
                            "DEVICE_SPEC",
                            "CHARGING_TERM",
                            "SUSPENSION_TERM",
                            "RETURN_CHECKLIST",
                            "ENTITY_PROFILE",
                            "PRODUCT_LINE",
                            "PRODUCT_OFFERING_PRICE",
                            "CATALOG",
                            "CATEGORY",
                            "PRODUCT_SPECIFICATION",
                            "USAGE_SPECIFICATION",
                            "SERVICE_SPECIFICATION"
                        ]
                    }
                }
            },
            "PriceListRefOracle":{
                "title":"PriceListRefOracle",
                "type":"object",
                "description":"Pricelist reference.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the Pricelist"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the Pricelist"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the Pricelist"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the Pricelist"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of PricelistRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> the base (class) type of this REST resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The Class type of  referred Price List"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "PriceListGroupRefOracle":{
                "title":"PriceListRefOracle",
                "type":"object",
                "description":"Pricelist reference.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the Pricelist"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the Pricelist"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the Pricelist"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the Pricelist"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of PricelistRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> the base (class) type of this REST resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The Class type of  referred Price List"
                    },
                    "productOfferingPrice":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingPriceRef"
                        },
                        "required":[
                            "id"
                        ]
                    },
                    "productOfferingTerm":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingTermSummaryOracle"
                        }
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "TimePeriodRelativeOracle":{
                "title":"TimePeriodRelativeOracle",
                "type":"object",
                "description":"Relative validity period of the related party",
                "properties":{
                    "startRelativeDateTime":{
                        "$ref":"#/components/schemas/RelativeTimeOffsetOracle"
                    },
                    "endRelativeDateTime":{
                        "$ref":"#/components/schemas/RelativeTimeOffsetOracle"
                    }
                }
            },
            "RelativeTimeOffsetOracle":{
                "title":"RelativeTimeOffsetOracle",
                "type":"object",
                "description":"Relative time offset",
                "properties":{
                    "relativeEvent":{
                        "type":"string",
                        "description":"Relative time offset event"
                    },
                    "offSetunit":{
                        "type":"string",
                        "description":"Relative time offset unit"
                    },
                    "offsetValue":{
                        "type":"integer",
                        "description":"Relative time offset value"
                    }
                }
            },
            "BalanceElementRef":{
                "title":"BalanceElementRef",
                "type":"object",
                "description":"Balance element ref in price",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the balance element"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the balance element"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the balance element"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the balance element"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of balance element."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> the base (class) type of this REST resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The Class type of  referred balance element"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "PricePlanRelationshipOracle":{
                "title":"PricePlanRelationshipOracle",
                "description":"Relationship between a PricePlan and its price relationships in the context of an offer",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "version":{
                                "type":"string",
                                "description":"Version of the PricePlanRelationship being referred"
                            },
                            "appliesTo":{
                                "type":"string",
                                "description":"Bring in a open ended definition of alteration that specifies how price plan applicable to the offer",
                                "enum":[
                                    "ALL",
                                    "ONE_TIME",
                                    "RECURRING",
                                    "USAGE"
                                ]
                            },
                            "popRelationship":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductOfferingPriceRelationshipOracle"
                                }
                            },
                            "applicableProductOffering":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ApplicableProductOfferingOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "ApplicableProductOfferingOracle":{
                "title":"ApplicableProductOfferingOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "relationshipHierarchy":{
                                "type":"string",
                                "description":"Hierarchy of the bundle offer tree"
                            },
                            "version":{
                                "type":"string",
                                "description":"Version of the referred offering"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingRelationship":{
                "title":"ProductOfferingRelationship",
                "type":"object",
                "description":"Relationship between/among product offerings.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the productOffering"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the referred product productOffering"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of the relationship such as migration, substitution, dependency, exclusivity",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY",
                            "PARENT"
                        ]
                    },
                    "role":{
                        "type":"string",
                        "description":"Role of the product productOffering relationship"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    }
                },
                "required":[
                    "id"
                ]
            },
            "ProductSpecification":{
                "title":"ProductSpecification",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the product specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the product specification"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the product specification"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the product specification is"
                    },
                    "brand":{
                        "type":"string",
                        "description":"The manufacturer or trademark of the specification"
                    },
                    "isBundle":{
                        "type":"boolean",
                        "description":"isBundle determines whether a productSpecification represents a single productSpecification (false), or a bundle of productSpecification (true)."
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "productNumber":{
                        "type":"string",
                        "description":"An identification number assigned to uniquely identity the specification"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "version":{
                        "type":"string",
                        "description":"Product specification version"
                    },
                    "@type":{
                        "type":"string",
                        "description":"class type of the product specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the product specification"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "productSpecCharacteristic":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/CharacteristicSpecificationOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttributeRefOracle"
                                }
                            ]
                        }
                    },
                    "serviceSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ServiceSpecificationRefOracle"
                        }
                    },
                    "targetProductSchema":{
                        "$ref":"#/components/schemas/TargetProductSchema"
                    },
                    "productSpecificationRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecificationRelationship"
                        }
                    },
                    "resourceSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ResourceSpecificationRef"
                        }
                    },
                    "attachment":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/Attachment"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentRef"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "Attachment":"#/components/schemas/Attachment",
                                    "AttachmentOracle":"#/components/schemas/AttachmentOracle",
                                    "AttachmentRef":"#/components/schemas/AttachmentRef"
                                }
                            }
                        }
                    },
                    "bundledProductSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/BundledProductSpecification"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductSpecification":"#/components/schemas/ProductSpecification",
                        "ProductSpecificationOracle":"#/components/schemas/ProductSpecificationOracle"
                    }
                }
            },
            "ProductSpecificationOracle":{
                "title":"ProductSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "category":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CategoryRef"
                                }
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "usageSpecification":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/UsageSpecificationRefOracle"
                                }
                            },
                            "customerProfileSpecification":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomerProfileSpecificationRef"
                                }
                            },
                            "usedBy":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/UsedByRef"
                                }
                            },
                            "customProfileSpec":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the Product Specification"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingPrice":{
                "title":"ProductOfferingPrice",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique id of this resource"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference of this resource"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the productOfferingPrice"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the productOfferingPrice"
                    },
                    "version":{
                        "type":"string",
                        "description":"ProductOfferingPrice version"
                    },
                    "glid":{
                        "type":"string",
                        "description":"glid"
                    },
                    "discountable":{
                        "type":"boolean",
                        "description":"A flag indicating if this POP is discountable or not"
                    },
                    "billOnPurchase":{
                        "type":"boolean",
                        "description":"A flag indicating if a bill on purchase is to be provided or not"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "priceType":{
                        "type":"string",
                        "description":"Describes the price, such as recurring, discount, allowance, penalty, and so forth",
                        "enum":[
                            "RECURRING",
                            "ONE_TIME",
                            "USAGE",
                            "ALTERATION",
                            "ALLOWANCE",
                            "ALLOWANCE_GRANT",
                            "OVERAGE",
                            "PENALTY",
                            "ONE_TIME_PRICE_PLAN",
                            "RECURRING_PRICE_PLAN",
                            "USAGE_PRICE_PLAN",
                            "ALTERATION_PRICE_PLAN",
                            "OVERAGE_PRICE_PLAN",
                            "COUNTER",
                            "ROLLOVER"
                        ]
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/Quantity"
                    },
                    "recurringChargePeriodType":{
                        "type":"string",
                        "description":"The period to repeat the application of the price. For recurring price, if no value is provided for this field, it will be set to MONTHLY.",
                        "enum":[
                            "MONTHLY",
                            "BI_MONTHLY",
                            "QUARTERLY",
                            "SEMI_ANNUAL",
                            "ANNUAL",
                            "DAILY"
                        ]
                    },
                    "recurringChargePeriodLength":{
                        "type":"integer",
                        "description":"The period of the recurring charge. For recurring price, if no value is provided for this field, it will be set to 1."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the product offering price"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the product offering price"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this product offering price"
                    },
                    "isBundle":{
                        "type":"boolean",
                        "description":"A flag indicating if this POP is composite (bundle) or not"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "price":{
                        "$ref":"#/components/schemas/Money"
                    },
                    "percentage":{
                        "type":"number",
                        "description":"Percentage to apply for ProdOfferPriceAlteration"
                    },
                    "bundledPopRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/BundledProductOfferingPriceRelationship"
                        }
                    },
                    "popRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingPriceRelationship"
                        }
                    },
                    "prodSpecCharValueUse":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecificationCharacteristicValueUse"
                        }
                    },
                    "specCharValueUse":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/SpecCharValueUse"
                        }
                    },
                    "productOfferingTerm":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/ProductOfferingTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/ServiceEntitlementOfferTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/CommitmentTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/SubscriptionTermOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/PaymentTermOracle"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "ProductOfferingTermOracle":"#/components/schemas/ProductOfferingTermOracle",
                                    "ServiceEntitlementOfferTermOracle":"#/components/schemas/ServiceEntitlementOfferTermOracle",
                                    "CommitmentTermOracle":"#/components/schemas/CommitmentTermOracle",
                                    "SubscriptionTermOracle":"#/components/schemas/SubscriptionTermOracle",
                                    "PaymentTermOracle":"#/components/schemas/PaymentTermOracle"
                                }
                            }
                        }
                    },
                    "place":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PlaceRef"
                        }
                    },
                    "policy":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PolicyRef"
                        }
                    },
                    "pricingLogicAlgorithm":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PricingLogicAlgorithmRef"
                        }
                    },
                    "tax":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/TaxItem"
                        }
                    },
                    "alterationBasedOn":{
                        "$ref":"#/components/schemas/AlterationBasedOnOracle"
                    },
                    "alterationExpression":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/AlterationExpressionOracle"
                        }
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductOfferingPrice":"#/components/schemas/ProductOfferingPrice",
                        "ProductOfferingPriceOracle":"#/components/schemas/ProductOfferingPriceOracle",
                        "ProductOfferPriceAlterationOracle":"#/components/schemas/ProductOfferingPriceAlterationOracle",
                        "ProductOfferPriceAllowanceOracle":"#/components/schemas/ProductOfferingPriceAllowanceOracle",
                        "ProductOfferRolloverPriceOracle":"#/components/schemas/ProductOfferRolloverPriceOracle",
                        "ProductOfferingBeatPriceOracle":"#/components/schemas/ProductOfferingBeatPriceOracle",
                        "ProductOfferPriceCounterOracle":"#/components/schemas/ProductOfferingPriceCounterOracle",
                        "ProductOfferPriceOverageOracle":"#/components/schemas/ProductOfferingPriceOverageOracle",
                        "ProductOfferPricePlanOracle":"#/components/schemas/ProductOfferingPricePlanOracle",
                        "PenaltyPriceOracle":"#/components/schemas/PenaltyPriceOracle"
                    }
                }
            },
            "ProductOfferingPriceOracle":{
                "title":"ProductOfferingPriceOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPrice"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "isTaxInclusive":{
                                "type":"boolean",
                                "description":"Indicates id the price is inclusive of tax"
                            },
                            "priceSubType":{
                                "type":"string",
                                "description":"tag of the price like Overage, Allowance, Installment  etc.",
                                "enum":[
                                    "INSTALLMENT",
                                    "LEASE",
                                    "MIN_DOWNPAYMENT",
                                    "UPGRADE_FEE",
                                    "MIGRATION_FEE",
                                    "PRICE_PLA",
                                    "DEPOSIT",
                                    "DOWNGRADE",
                                    "EARLY_TERMINATION",
                                    "PURCH_OPTION",
                                    "LEASE_TOTAL",
                                    "COMPOSITE_ALTRN",
                                    "NON_CURRENCY_ALTRN",
                                    "LEASE_DEFERRED_AMOUNT",
                                    "VALUE_INCREMENT",
                                    "VALUE_DECREMENT",
                                    "PERCENT_INCREMENT",
                                    "PERCENT_DECREMENT"
                                ]
                            },
                            "priceTag":{
                                "type":"string",
                                "description":"PriceTag for the price."
                            },
                            "oneTimeFeeType":{
                                "type":"string",
                                "description":"Indicates the one time fee type. The default value is PURCHASE.",
                                "enum":[
                                    "PURCHASE",
                                    "CANCEL",
                                    "PENALTY"
                                ]
                            },
                            "recurringFeeType":{
                                "type":"string",
                                "description":"Indicates the recurring fee type. The default value is CYCLE.",
                                "enum":[
                                    "CYCLE",
                                    "CYCLE_ARREAR",
                                    "CYCLE_FWD_ARREAR"
                                ]
                            },
                            "priceTagValueObject":{
                                "$ref":"#/components/schemas/PriceTagRefOracle"
                            },
                            "pricelist":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PriceListRefOracle"
                                }
                            },
                            "customProfileSpec":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            },
                            "usageSpecification":{
                                "$ref":"#/components/schemas/UsageSpecificationRefOracle"
                            },
                            "balanceElement":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/BalanceElementRef"
                                }
                            },
                            "relativeValidFor":{
                                "$ref":"#/components/schemas/TimePeriodRelativeOracle"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the productOfferingPrice"
                            },
                            "triggerConditionGroup":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/TriggerConditionGroupOracle"
                                }
                            },
                            "counter":{
                                "type":"array",
                                "items":{
                                    "anyOf":[
                                        {
                                            "$ref":"#/components/schemas/ProductOfferingPriceRef"
                                        },
                                        {
                                            "$ref":"#/components/schemas/ProductOfferingPriceWOCounterOracle"
                                        }
                                    ],
                                    "discriminator":{
                                        "propertyName":"@type",
                                        "mapping":{
                                            "ProductOfferingPriceRef":"#/components/schemas/ProductOfferingPriceRef",
                                            "ProductOfferingPriceCounterOracle":"#/components/schemas/ProductOfferingPriceWOCounterOracle"
                                        }
                                    }
                                }
                            },
                            "alterationAppliedOn":{
                                "type":"string",
                                "description":"indicates sharing option for the alteration price",
                                "enum":[
                                    "USER_BALANCE",
                                    "SHARER_BALANCE"
                                ]
                            },
                            "discountMode":{
                                "type":"string",
                                "description":"Indicates the mode of processing discounts.",
                                "enum":[
                                    "SEQUENTIAL",
                                    "PARALLEL"
                                ]
                            },
                            "chargeType":{
                                "type":"string",
                                "description":"Indicates the charge type for the alteration.",
                                "enum":[
                                    "DEBIT",
                                    "CREDIT"
                                ]
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "ProductOfferingPriceOracle":"#/components/schemas/ProductOfferingPriceOracle",
                                "ProductOfferPriceAlterationOracle":"#/components/schemas/ProductOfferingPriceAlterationOracle",
                                "ProductOfferPriceAllowanceOracle":"#/components/schemas/ProductOfferingPriceAllowanceOracle",
                                "ProductOfferRolloverPriceOracle":"#/components/schemas/ProductOfferRolloverPriceOracle",
                                "ProductOfferingBeatPriceOracle":"#/components/schemas/ProductOfferingBeatPriceOracle",
                                "ProductOfferPriceCounterOracle":"#/components/schemas/ProductOfferingPriceCounterOracle",
                                "ProductOfferPriceOverageOracle":"#/components/schemas/ProductOfferingPriceOverageOracle",
                                "ProductOfferPricePlanOracle":"#/components/schemas/ProductOfferingPricePlanOracle",
                                "PenaltyPriceOracle":"#/components/schemas/PenaltyPriceOracle"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingPriceWOCounterOracle":{
                "title":"ProductOfferingPriceWOCounterOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPrice"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "isTaxInclusive":{
                                "type":"boolean",
                                "description":"Indicates id the price is inclusive of tax"
                            },
                            "priceSubType":{
                                "type":"string",
                                "description":"tag of the price like Overage, Allowance, Installment  etc.",
                                "enum":[
                                    "INSTALLMENT",
                                    "LEASE",
                                    "MIN_DOWNPAYMENT",
                                    "UPGRADE_FEE",
                                    "MIGRATION_FEE",
                                    "PRICE_PLA",
                                    "DEPOSIT",
                                    "DOWNGRADE",
                                    "EARLY_TERMINATION",
                                    "PURCH_OPTION",
                                    "LEASE_TOTAL",
                                    "COMPOSITE_ALTRN",
                                    "NON_CURRENCY_ALTRN",
                                    "LEASE_DEFERRED_AMOUNT",
                                    "VALUE_INCREMENT",
                                    "VALUE_DECREMENT",
                                    "PERCENT_INCREMENT",
                                    "PERCENT_DECREMENT"
                                ]
                            },
                            "priceTag":{
                                "type":"string",
                                "description":"PriceTag for the price."
                            },
                            "oneTimeFeeType":{
                                "type":"string",
                                "description":"Indicates the one time fee type. The default value is PURCHASE.",
                                "enum":[
                                    "PURCHASE",
                                    "CANCEL",
                                    "PENALTY"
                                ]
                            },
                            "recurringFeeType":{
                                "type":"string",
                                "description":"Indicates the recurring fee type. The default value is CYCLE.",
                                "enum":[
                                    "CYCLE",
                                    "CYCLE_ARREAR",
                                    "CYCLE_FWD_ARREAR"
                                ]
                            },
                            "priceTagValueObject":{
                                "$ref":"#/components/schemas/PriceTagRefOracle"
                            },
                            "pricelist":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PriceListRefOracle"
                                }
                            },
                            "customProfileSpec":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            },
                            "usageSpecification":{
                                "$ref":"#/components/schemas/UsageSpecificationRefOracle"
                            },
                            "balanceElement":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/BalanceElementRef"
                                }
                            },
                            "relativeValidFor":{
                                "$ref":"#/components/schemas/TimePeriodRelativeOracle"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the productOfferingPrice"
                            },
                            "triggerConditionGroup":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/TriggerConditionGroupOracle"
                                }
                            },
                            "alterationAppliedOn":{
                                "type":"string",
                                "description":"indicates sharing option for the alteration price",
                                "enum":[
                                    "USER_BALANCE",
                                    "SHARER_BALANCE"
                                ]
                            },
                            "discountMode":{
                                "type":"string",
                                "description":"Indicates the mode of processing discounts.",
                                "enum":[
                                    "SEQUENTIAL",
                                    "PARALLEL"
                                ]
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "ProductOfferingPriceOracle":"#/components/schemas/ProductOfferingPriceOracle",
                                "ProductOfferPriceAlterationOracle":"#/components/schemas/ProductOfferingPriceAlterationOracle",
                                "ProductOfferPriceAllowanceOracle":"#/components/schemas/ProductOfferingPriceAllowanceOracle",
                                "ProductOfferRolloverPriceOracle":"#/components/schemas/ProductOfferRolloverPriceOracle",
                                "ProductOfferPriceCounterOracle":"#/components/schemas/ProductOfferingPriceCounterOracle",
                                "ProductOfferPriceOverageOracle":"#/components/schemas/ProductOfferingPriceOverageOracle",
                                "ProductOfferPricePlanOracle":"#/components/schemas/ProductOfferingPricePlanOracle",
                                "PenaltyPriceOracle":"#/components/schemas/PenaltyPriceOracle"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingPriceAlterationOracle":{
                "title":"ProductOfferingPriceAlterationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "priority":{
                                "type":"integer",
                                "description":"Priority of this resource represented in numerical value."
                            },
                            "discountEligibility":{
                                "$ref":"#/components/schemas/PriceEligibilityOracle"
                            },
                            "alterationType":{
                                "type":"string",
                                "description":"Describe the alteration price",
                                "enum":[
                                    "DISCOUNT",
                                    "MARKUP",
                                    "OVERRIDE",
                                    "DISCOUNT_OVERRIDE",
                                    "CHARGE_SHARE"
                                ]
                            }
                        }
                    }
                ]
            },
            "PenaltyPriceOracle":{
                "title":"PenaltyPriceOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "prorationReductionTerm":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProrationReductionTermOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "TriggerConditionGroupOracle":{
                "title":"TriggerConditionGroupOracle",
                "type":"object",
                "description":"The group of the alteration trigger condition, with conditions related by a logical AND or OR relationship.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the TriggerConditionGroup."
                    },
                    "groupName":{
                        "type":"string",
                        "description":"Name of the TriggerConditionGroup."
                    },
                    "triggerCondition":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/TriggerConditionOracle"
                        }
                    },
                    "conditionLogicalRelationship":{
                        "type":"string",
                        "description":"The logical relation type amongst the TriggerConditionGroup.",
                        "enum":[
                            "AND",
                            "OR"
                        ]
                    }
                },
                "required":[
                    "id"
                ]
            },
            "TriggerConditionOracle":{
                "title":"TriggerConditionOracle",
                "type":"object",
                "description":"A trigger condition for an alteration.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the trigger condition."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. The name given to the alteration trigger condition."
                    },
                    "stringExpression":{
                        "type":"string",
                        "description":"A string. Unique identifier of the trigger condition."
                    },
                    "triggerOperator":{
                        "type":"string",
                        "description":"The operator connecting the trigger expression and the value.",
                        "enum":[
                            "EQUAL",
                            "GREATER_THAN",
                            "LESS_THAN",
                            "GREATER_THAN_OR_EQUAL",
                            "LESS_THAN_OR_EQUAL",
                            "NOT_EQUAL",
                            "INLIST"
                        ]
                    },
                    "triggerValue":{
                        "type":"string",
                        "description":"The value with which the trigger expression needs to be compared with."
                    },
                    "triggerExpression":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/TriggerExpressionOracle"
                        }
                    }
                },
                "required":[
                    "name"
                ]
            },
            "TriggerExpressionOracle":{
                "type":"object",
                "title":"TriggerExpressionOracle",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the trigger expression."
                    },
                    "operator":{
                        "type":"string",
                        "description":"Operator of the expression"
                    },
                    "expressionType":{
                        "type":"string",
                        "description":"Expression Type of the expression.",
                        "enum":[
                            "UNARY",
                            "BINARY",
                            "NUMERIC",
                            "STRING",
                            "TRIGGERCHAR",
                            "BALANCEOFRESOURCE"
                        ]
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            }
                        ],
                        "description":"A discrete value that the relationship can take on."
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Trigger Expression"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the Trigger Expression"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Trigger Expression entity"
                    },
                    "expressionRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/TriggerExpressionRelationshipOracle"
                        }
                    }
                },
                "required":[
                    "expressionType",
                    "id",
                    "@type"
                ]
            },
            "TriggerExpressionRelationshipOracle":{
                "type":"object",
                "title":"TriggerExpressionRelationshipOracle",
                "description":"An expression relationship",
                "properties":{
                    "id":{
                        "type":"string"
                    },
                    "name":{
                        "type":"string"
                    },
                    "relationshipType":{
                        "type":"string",
                        "enum":[
                            "LEFT_HAND_SIDE",
                            "RIGHT_HAND_SIDE"
                        ]
                    },
                    "@type":{
                        "type":"string"
                    },
                    "@baseType":{
                        "type":"string"
                    },
                    "@schemaLocation":{
                        "type":"string"
                    }
                },
                "required":[
                    "relationshipType",
                    "id",
                    "@type"
                ]
            },
            "PriceEligibilityOracle":{
                "title":"PriceEligibilityOracle",
                "type":"object",
                "description":"specifies the eligibility rule for the offer",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the pricing eligibility rule."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the eligibility rule"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative text describing the eligibility rule"
                    },
                    "eligibilityExpression":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/EligibilityExpressionOracle"
                        }
                    },
                    "active":{
                        "type":"boolean",
                        "description":"A flag indicating if the rule is active or not"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    }
                },
                "required":[
                    "name"
                ]
            },
            "EligibilityExpressionOracle":{
                "type":"object",
                "title":"EligibilityExpressionOracle",
                "description":"A eligibility expression",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the eligibility expression."
                    },
                    "operator":{
                        "type":"string",
                        "description":"Operator of the expression"
                    },
                    "expressionType":{
                        "type":"string",
                        "description":"Expression Type of the expression",
                        "enum":[
                            "ARITHMATIC",
                            "NUMERIC",
                            "LOGICAL",
                            "CHARGE",
                            "QUANTITY",
                            "BALANCE"
                        ]
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            }
                        ],
                        "description":"A discrete value that the relationship can take on."
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Elibility Expression"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the Elibility Expression"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Elibility Expression entity"
                    },
                    "expressionRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ExpressionRelationship"
                        }
                    }
                },
                "required":[
                    "expressionType",
                    "id",
                    "@type"
                ]
            },
            "ExpressionRelationship":{
                "type":"object",
                "title":"ExpressionRelationship",
                "description":"An expression relationship",
                "properties":{
                    "expressionId":{
                        "type":"string",
                        "description":"A string. The unique id given for the expression relationship"
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. The name given for the expression relationship"
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. The href given for the expression relationship"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as aggregation, migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "LEFT_HAND_SIDE",
                            "RIGHT_HAND_SIDE"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Eligibity Expression Relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the Eligibity Expression Relationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Eligibity Expression Relationship entity"
                    }
                },
                "required":[
                    "relationshipType",
                    "expressionId",
                    "@type"
                ]
            },
            "ProductOfferingPriceAllowanceOracle":{
                "title":"ProductOfferingPriceAllowanceOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "shareAllowance":{
                                "type":"boolean",
                                "description":"Flag to indicate that the allowance is shared"
                            },
                            "usageUnit":{
                                "type":"string",
                                "description":"Indicates the usage unit",
                                "enum":[
                                    "NONE",
                                    "SECOND",
                                    "MINUTE",
                                    "HOUR",
                                    "DAY",
                                    "MONTH",
                                    "BYTE",
                                    "KILOBYTE",
                                    "MEGABYTE",
                                    "GIGABYTE",
                                    "PAGES",
                                    "MOVIES",
                                    "TIME_INTERVAL",
                                    "QUANTITY",
                                    "MBPS",
                                    "GBPS"
                                ]
                            },
                            "allowanceValidity":{
                                "title":"AllowanceValidityOracle",
                                "type":"object",
                                "description":"Validity of allowance",
                                "properties":{
                                    "value":{
                                        "type":"number",
                                        "description":"Indicates the amount of allowance validity"
                                    },
                                    "unit":{
                                        "type":"string",
                                        "description":"Indicates the unit of allowance validity",
                                        "enum":[
                                            "SECOND",
                                            "MINUTE",
                                            "HOUR",
                                            "DAY",
                                            "MONTH",
                                            "ACCOUNTING_CYCLE",
                                            "BILLING_CYCLE"
                                        ]
                                    },
                                    "startCriteria":{
                                        "type":"string",
                                        "description":"Indicates start criteria of allowance validity.",
                                        "enum":[
                                            "EVENT_OCCURRENCE",
                                            "FIRST_USAGE"
                                        ]
                                    }
                                },
                                "required":[
                                    "value",
                                    "unit"
                                ]
                            }
                        }
                    }
                ]
            },
            "ProductOfferRolloverPriceOracle":{
                "title":"ProductOfferRolloverPriceOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "rolloverFrequency":{
                                "type":"string",
                                "description":"The period to repeat the rollover for.",
                                "enum":[
                                    "MONTH"
                                ]
                            },
                            "rolloverRules":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/RolloverRuleOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "ProductOfferingBeatPriceOracle":{
                "title":"ProductOfferingBeatPriceOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "beat":{
                                "$ref":"#/components/schemas/BeatOracle"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingPriceCounterOracle":{
                "title":"ProductOfferingPriceCounterOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "counterValidity":{
                                "title":"CounterValidityOracle",
                                "type":"object",
                                "description":"Validity of counter",
                                "properties":{
                                    "value":{
                                        "type":"number",
                                        "description":"Indicates the value of counter validity"
                                    },
                                    "unit":{
                                        "type":"string",
                                        "description":"Indicates the unit of counter validity",
                                        "enum":[
                                            "SECOND",
                                            "MINUTE",
                                            "HOUR",
                                            "DAY",
                                            "MONTH",
                                            "ACCOUNTING_CYCLE",
                                            "BILLING_CYCLE"
                                        ]
                                    },
                                    "startCriteria":{
                                        "type":"string",
                                        "description":"Indicates start criteria of counter validity.",
                                        "enum":[
                                            "EVENT_OCCURRENCE",
                                            "FIRST_USAGE"
                                        ]
                                    }
                                },
                                "required":[
                                    "value",
                                    "unit"
                                ]
                            }
                        }
                    }
                ]
            },
            "ProductOfferingPriceOverageOracle":{
                "title":"ProductOfferingPriceOverageOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object"
                    }
                ]
            },
            "ProductOfferingPricePlanOracle":{
                "title":"ProductOfferingPricePlanOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "alterationType":{
                                "type":"string",
                                "description":"Describe the alteration price",
                                "enum":[
                                    "DISCOUNT",
                                    "MARKUP",
                                    "OVERRIDE",
                                    "DISCOUNT_OVERRIDE"
                                ]
                            },
                            "priceRange":{
                                "type":"string",
                                "description":"Indicates the range of prices this price plan defines"
                            },
                            "compositePopRelationship":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CompositePopRelationshipOracle"
                                }
                            },
                            "usageSpecMeteringRuleUse":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/UsageSpecMeteringRuleUse"
                                }
                            }
                        }
                    }
                ]
            },
            "UsageSpecMeteringRuleUse":{
                "title":"UsageSpecMeteringRuleUse",
                "type":"object",
                "description":"Metering rules used in the usage price plan",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the associated Metering Rule"
                    },
                    "id":{
                        "type":"string",
                        "description":"ID of the Metering Rule"
                    },
                    "usageSpecification":{
                        "$ref":"#/components/schemas/UsageSpecificationRefOracle"
                    }
                },
                "required":[
                    "name",
                    "id",
                    "usageSpecification"
                ]
            },
            "PricingLogicAlgorithm":{
                "title":"PricingLogicAlgorithm",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique id of this resource"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference of this resource"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the pla"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of this pla"
                    },
                    "version":{
                        "type":"string",
                        "description":"pla version"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the product offering price"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the pla"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this pla"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "plaSpecification":{
                        "$ref":"#/components/schemas/PlaSpecificationRef"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "customProfileSpec":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                        }
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "PricingLogicAlgorithm":"#/components/schemas/PricingLogicAlgorithm",
                        "PlaQuantityRangeOracle":"#/components/schemas/PlaQuantityRangeOracle"
                    }
                }
            },
            "PlaQuantityRangeOracle":{
                "title":"PlaQuantityRangeOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PricingLogicAlgorithm"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "plaCharacteristic":{
                                "type":"array",
                                "items":{
                                    "title":"plaCharacteristic",
                                    "$ref":"#/components/schemas/PlaCharacteristicOracle"
                                }
                            },
                            "pricingType":{
                                "type":"string",
                                "description":"Specifies whether the pricing type is simple or tiered",
                                "enum":[
                                    "SIMPLE",
                                    "TIERED"
                                ]
                            },
                            "tierRange":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/TierRangeOracle"
                                }
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "lastUpdate":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the last update"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the Pricing Logic Algorithm"
                            }
                        }
                    }
                ]
            },
            "ProductLine":{
                "title":"ProductLine",
                "type":"object",
                "description":"Represents entities that groups product offerings",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the product line"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the Product line"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the product line"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the product line"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "version":{
                        "type":"string",
                        "description":"ProductOffering version"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the product offering"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the product offering"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this product offering"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductLine":"#/components/schemas/ProductLine",
                        "ProductLineOracle":"#/components/schemas/ProductLineOracle"
                    }
                }
            },
            "ProductLineOracle":{
                "title":"ProductLineOracle",
                "description":"Represents entities that groups product offerings",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductLine"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "productOffering":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductOfferingRefOracle"
                                }
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "compatibilityRules":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CompatibilityRulesOracle"
                                }
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the product line"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingTerm":{
                "title":"ProductOfferingTerm",
                "type":"object",
                "description":"Service Entitlement deatils of a Product Offering.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the productOfferingTerm"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the productOfferingTerm"
                    },
                    "duration":{
                        "$ref":"#/components/schemas/TermDurationRangeOracle"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Immediate base (class) type of the product offering price"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the product offering price"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this product offering term"
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductOfferingTerm":"#/components/schemas/ProductOfferingTerm",
                        "ProductOfferingTermOracle":"#/components/schemas/ProductOfferingTermOracle"
                    }
                }
            },
            "TermDurationRangeOracle":{
                "title":"TermDurationRangeOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/TermDuration"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "minDurationAmount":{
                                "type":"number",
                                "description":"Minimum term duration"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingTermOracle":{
                "title":"ProductOfferingTermOracle",
                "description":"Service Entitlement deatils of a Product Offering.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingTerm"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "isDefault":{
                                "type":"boolean",
                                "description":"To identify the default term for an offer"
                            },
                            "defaultingTerm":{
                                "type":"string",
                                "description":"Action taken on defaulting a term"
                            },
                            "attachment":{
                                "type":"array",
                                "items":{
                                    "anyOf":[
                                        {
                                            "$ref":"#/components/schemas/Attachment"
                                        },
                                        {
                                            "$ref":"#/components/schemas/AttachmentOracle"
                                        },
                                        {
                                            "$ref":"#/components/schemas/AttachmentRef"
                                        }
                                    ],
                                    "discriminator":{
                                        "propertyName":"@type",
                                        "mapping":{
                                            "Attachment":"#/components/schemas/Attachment",
                                            "AttachmentOracle":"#/components/schemas/AttachmentOracle",
                                            "AttachmentRef":"#/components/schemas/AttachmentRef"
                                        }
                                    }
                                }
                            },
                            "productOfferingPrice":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductOfferingPriceRef"
                                }
                            },
                            "customProfileSpec":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "ProductOfferingTermOracle":"#/components/schemas/ProductOfferingTermOracle",
                                "ServiceEntitlementOfferTermOracle":"#/components/schemas/ServiceEntitlementOfferTermOracle",
                                "CommitmentTermOracle":"#/components/schemas/CommitmentTermOracle",
                                "SubscriptionTermOracle":"#/components/schemas/SubscriptionTermOracle",
                                "PaymentTermOracle":"#/components/schemas/PaymentTermOracle"
                            }
                        }
                    }
                ]
            },
            "ServiceEntitlementOfferTermOracle":{
                "title":"ServiceEntitlementOfferTermOracle",
                "description":"Service Entitlement deatils of a Product Offering.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingTermOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "serviceEntitlementName":{
                                "type":"string"
                            },
                            "serviceEntitlementTermName":{
                                "type":"string"
                            },
                            "serviceSpecificationName":{
                                "type":"string"
                            }
                        },
                        "required":[
                            "serviceEntitlementName",
                            "serviceEntitlementTermName",
                            "serviceSpecificationName"
                        ]
                    }
                ]
            },
            "CommitmentTermOracle":{
                "title":"CommitmentTermOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingTermOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "commitmentTermType":{
                                "type":"string",
                                "enum":[
                                    "INSTALLMENT",
                                    "LEASE",
                                    "SERVICE"
                                ]
                            },
                            "durationType":{
                                "type":"string",
                                "enum":[
                                    "DURATION_RANGE",
                                    "FIXED"
                                ]
                            },
                            "earlyTerminationOption":{
                                "type":"boolean"
                            },
                            "earlyTerminationPenalty":{
                                "type":"boolean"
                            },
                            "commitment":{
                                "type":"boolean"
                            },
                            "applyComponentCharge":{
                                "type":"boolean"
                            },
                            "penaltyType":{
                                "type":"string",
                                "enum":[
                                    "FLAT",
                                    "NONE",
                                    "REDUCE_EQUAL_AMOUNT",
                                    "BALANCE_OF_CONTRACT",
                                    "FIXED_PRORATION",
                                    "VARIABLE_PRORATION"
                                ]
                            },
                            "penaltyGracePeriodApplicable":{
                                "type":"boolean"
                            },
                            "gracePeriodDuration":{
                                "type":"integer"
                            },
                            "gracePeriodUnits":{
                                "type":"string"
                            },
                            "autoRenewal":{
                                "type":"boolean"
                            },
                            "specifyPenaltyAs":{
                                "type":"string",
                                "enum":[
                                    "PERC_OF_BILL_AMT"
                                ]
                            },
                            "penaltyPercentage":{
                                "type":"number"
                            },
                            "reducePenalty":{
                                "type":"boolean"
                            },
                            "endOfLeaseTermOptions":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/EndOfLeaseTermOptionsOracle"
                                }
                            },
                            "upgradeRule":{
                                "$ref":"#/components/schemas/UpgradeEligibilityRuleOracle"
                            }
                        }
                    }
                ],
                "description":"Product Offering Commitment Term."
            },
            "ProrationReductionTermOracle":{
                "title":"ProrationReductionTerm",
                "type":"object",
                "description":"Provides references to Early Termination Fee (ETF) that prorates the ETF for a subscriber based on their contract duration. This proration allows a subscriber to pay less to terminate as more time passes giving them an option to stay on for an additional period in contract to minimize their exit fee.",
                "properties":{
                    "fromOffset":{
                        "type":"number",
                        "description":"Start of the schedule"
                    },
                    "reductionPercentage":{
                        "type":"number",
                        "description":"Percentage of the amount to be deducted"
                    },
                    "durationUnits":{
                        "type":"string",
                        "description":"Term duration units",
                        "enum":[
                            "DAYS",
                            "MONTHS",
                            "WEEKS",
                            "YEARS"
                        ]
                    }
                }
            },
            "SubscriptionTermOracle":{
                "title":"SubscriptionTermOracle",
                "description":"Product Offering Subscription Term.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingTermOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "earlyTerminationOption":{
                                "type":"boolean"
                            }
                        }
                    }
                ]
            },
            "PaymentTermOracle":{
                "title":"PaymentTermOracle",
                "description":"Product Offering Payment Term.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingTermOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "paymentType":{
                                "type":"string",
                                "enum":[
                                    "PREPAID",
                                    "POSTPAID",
                                    "INSTALLMENT",
                                    "LEASE"
                                ]
                            },
                            "creditCheckRequired":{
                                "type":"boolean",
                                "description":"Indicates if credit check is required"
                            }
                        }
                    }
                ]
            },
            "UpgradeEligibilityRuleOracle":{
                "title":"UpgradeEligibilityRuleOracle",
                "type":"object",
                "properties":{
                    "minimumTerm":{
                        "type":"number",
                        "description":"Minimum terms required to be fullfilled for upgarde"
                    },
                    "minimumTermPercentage":{
                        "type":"string",
                        "description":"Minimum term percentage required to be fullfilled for upgarde"
                    },
                    "minimumBalance":{
                        "type":"number",
                        "description":"Minimum balance amount required for upgarde"
                    },
                    "minimumBalancePercentage":{
                        "type":"string",
                        "description":"Minimum balance amount percentage required for upgarde"
                    },
                    "minimumPayment":{
                        "type":"number",
                        "description":"Minimum payment for device upgrade"
                    },
                    "minimumPaymentPercentage":{
                        "type":"string",
                        "description":"Minimum payment percentage required for device upgarde"
                    }
                }
            },
            "EndOfLeaseTermOptionsOracle":{
                "title":"EndOfLeaseTermOptionsOracle",
                "type":"object",
                "properties":{
                    "endOfLeaseType":{
                        "type":"string",
                        "description":"End of lease type to identify it is a return or continue type",
                        "enum":[
                            "RETURN",
                            "CONTINUE",
                            "BUY_BACK"
                        ]
                    },
                    "description":{
                        "type":"string",
                        "description":"Minimum term percentage required to be fullfilled for upgarde"
                    },
                    "productOfferingPrice":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingPriceRef"
                        }
                    }
                }
            },
            "BannerOracle":{
                "title":"BannerOracle",
                "type":"object",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"name of the banner."
                    },
                    "description":{
                        "type":"string",
                        "description":"description of the banner."
                    },
                    "priority":{
                        "type":"number",
                        "description":"priority of this banner for the productOffering it is associated with"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    }
                },
                "required":[
                    "name"
                ]
            },
            "UploadSchemaOracle":{
                "title":"UploadSchemaOracle",
                "type":"object",
                "properties":{
                    "primaryFile":{
                        "type":"object",
                        "description":"File to upload and Download.",
                        "format":"binary"
                    },
                    "path":{
                        "type":"string",
                        "description":"path of the file to upload and Download"
                    }
                }
            },
            "Error":{
                "title":"Error",
                "type":"object",
                "properties":{
                    "code":{
                        "type":"string",
                        "description":"Application related code (as defined in the API or from a common list)"
                    },
                    "reason":{
                        "type":"string",
                        "description":"Text that explains the reason for error. This can be shown to a client user."
                    },
                    "message":{
                        "type":"string",
                        "description":"Text that provide more details and corrective actions related to the error. This can be shown to a client user."
                    },
                    "status":{
                        "type":"string",
                        "description":"http error code extension like 400-2"
                    },
                    "referenceError":{
                        "type":"string",
                        "description":"url pointing to documentation describing the error"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of a REST resource."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"it provides a link to the schema describing a REST resource."
                    }
                },
                "required":[
                    "code",
                    "reason"
                ]
            },
            "TimePeriodOracle":{
                "description":"Validity period of the related party",
                "title":"TimePeriodOracle",
                "type":"object",
                "properties":{
                    "startDateTime":{
                        "type":"string",
                        "format":"date-time",
                        "description":"An instant of time, starting at the TimePeriod"
                    },
                    "endDateTime":{
                        "type":"string",
                        "format":"date-time",
                        "description":"An instant of time, ending at the TimePeriod."
                    }
                }
            },
            "BeatOracle":{
                "title":"BeatOracle",
                "description":"The beat is basically the pulse measure used for charging usage quantity.",
                "type":"object",
                "properties":{
                    "minQuantity":{
                        "type":"number",
                        "description":"This represents the minimum usage quantity of beat."
                    },
                    "minQuantityUnit":{
                        "type":"string",
                        "description":"The unit of measure for the minQuantity of beat.",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    },
                    "incrementQuantity":{
                        "type":"number",
                        "description":"This represents the increments in usage quantity of beat."
                    },
                    "incrementQuantityUnit":{
                        "type":"string",
                        "description":"The unit of measure for the incrementQuantity of beat.",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    },
                    "roundingMode":{
                        "type":"string",
                        "description":"This represents the rounding strategy to be applied for beat usage quantities.",
                        "enum":[
                            "DOWN",
                            "DOWN_ALT",
                            "FLOOR",
                            "FLOOR_ALT",
                            "NEAREST",
                            "UP"
                        ]
                    }
                }
            },
            "RelatedPartyRefOrPartyRoleRef":{
                "title":"RelatedParty",
                "description":"RelatedParty reference. A related party defines party or party role linked to a specific entity.",
                "type":"object",
                "properties":{
                    "role":{
                        "type":"string",
                        "description":"Role played by the related party or party role in the context of the specific entity it is linked to. Such as 'initiator', 'customer', 'salesAgent', 'user'."
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class Extensible name."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships."
                    },
                    "partyOrPartyRole":{
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/PartyRef"
                                },
                                {
                                    "$ref":"#/components/schemas/PartyRoleRef"
                                }
                            ]
                        }
                    }
                },
                "required":[
                    "@type",
                    "partyOrPartyRole"
                ]
            },
            "PartyRef":{
                "title":"PartyRef",
                "type":"object",
                "description":"A PartyRef",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier."
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the referred entity."
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation."
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class Extensible name."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships."
                    }
                },
                "required":[
                    "@type",
                    "@referredType"
                ]
            },
            "PartyRoleRef":{
                "title":"PartyRoleRef",
                "type":"object",
                "description":"A PartyRoleRef",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the referred entity."
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference."
                    },
                    "partyId":{
                        "type":"string",
                        "description":"The identifier of the engaged party that is linked to the PartyRole object."
                    },
                    "partyName":{
                        "type":"string",
                        "description":"The name of the engaged party that is linked to the PartyRole object."
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation."
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class Extensible name."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships."
                    }
                },
                "required":[
                    "@type",
                    "@referredType"
                ]
            },
            "ProductLineRef":{
                "title":"ProductLineRef",
                "type":"object",
                "description":"Product Line Reference",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the product line"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the product line"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the product line"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the product Line"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"class type of referred Product Line"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of Product Line."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "PlaceRef":{
                "title":"PlaceRef",
                "type":"object",
                "description":"Place reference. Place defines the places where the products are sold or delivered.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the place"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the place"
                    },
                    "name":{
                        "type":"string",
                        "description":"A user-friendly name for the place, such as \"Paris Store\", \"London Store\", \"Main Home\""
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Attachment"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the attachment"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this attachment entity"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"class type of the referred Place object"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "ExportSummaryResource":{
                "type":"object",
                "title":"ExportSummaryResource",
                "description":"This object holds exported resource details like name and count",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the resource exported"
                    },
                    "count":{
                        "type":"integer",
                        "description":"Indicates the number of resource exported"
                    }
                }
            },
            "ImportSummaryResource":{
                "type":"object",
                "title":"ImportSummaryResource",
                "description":"This object holds imported resource details like name and count",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the resource imported"
                    },
                    "count":{
                        "type":"integer",
                        "description":"Indicates the number of resource imported"
                    }
                }
            },
            "TargetProductSchema":{
                "title":"TargetProductSchema",
                "description":"The reference object to the schema and type of target product which is described by product specification",
                "type":"object",
                "properties":{
                    "@type":{
                        "type":"string",
                        "description":"class type of the target product"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing the target   product"
                    }
                },
                "required":[
                    "@type",
                    "@schemaLocation"
                ]
            },
            "TargetProductSchemaOracle":{
                "title":"TargetProductSchemaOracle",
                "type":"object",
                "description":"The reference object to the schema and type of target product which is described by product specification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/TargetProductSchema"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "subType":{
                                "type":"string",
                                "description":"class sub type of the target product"
                            }
                        }
                    }
                ]
            },
            "Attachment":{
                "type":"object",
                "title":"AttachmentRefOrValue",
                "description":"Complements the description of an element (for instance a product) through video, pictures...",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the attachment"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative text describing the content of the attachment"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the attachment"
                    },
                    "name":{
                        "type":"string",
                        "description":"name of the attachment"
                    },
                    "attachmentType":{
                        "type":"string",
                        "description":"Attachment type such as video, picture"
                    },
                    "size":{
                        "$ref":"#/components/schemas/Quantity"
                    },
                    "url":{
                        "type":"string",
                        "description":"Uniform Resource Locator, is a web page address (a subset of URI)"
                    },
                    "mimeType":{
                        "type":"string",
                        "description":"Attachment mime type such as extension file for video, picture and document"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Attachment"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the attachment"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this attachment entity"
                    }
                },
                "required":[
                    "@type"
                ]
            },
            "AttachmentOracle":{
                "title":"AttachmentOracle",
                "type":"object",
                "description":"Attachments added to a resource",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/Attachment"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "rank":{
                                "type":"number",
                                "description":"Attachment rank in order of their relevance for each attachmentType"
                            }
                        }
                    }
                ]
            },
            "CharacteristicSpecification":{
                "title":"CharacteristicSpecification",
                "type":"object",
                "description":"A characteristic quality or distinctive feature of a PlaSpecification.  The characteristic can be take on a discrete value, such as color, can take on a range of values, (for example, sensitivity of 100-240 mV), or can be derived from a formula (for example, usage time (hrs) = 30 - talk time *3). Certain characteristics, such as color, may be configured during the ordering or some other process.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the attribute"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the productSpecCharacteristic"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the productSpecCharacteristic is"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "URL"
                        ]
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"If true, the Boolean indicates that the productSpecCharacteristic is configurable"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ProductSpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this characteristic"
                    },
                    "@valueSchemaLocation":{
                        "type":"string",
                        "description":"This (optional) field provides a link to the schema describing the value type."
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality"
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality"
                    },
                    "isUnique":{
                        "type":"boolean",
                        "description":"An indicator that specifies if a value is unique for the specification. Possible values are; \"unique while value is in effect\" and \"unique whether value is in effect or not\""
                    },
                    "regex":{
                        "type":"string",
                        "description":"A rule or principle represented in regular expression used to derive the value of a characteristic value"
                    },
                    "extensible":{
                        "type":"boolean",
                        "description":"An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for a product"
                    },
                    "allowedUnits":{
                        "type":"array",
                        "items":{
                            "type":"string"
                        }
                    },
                    "charSpecRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CharacteristicSpecificationRelationshipOracle"
                        }
                    },
                    "characteristicValueSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CharacteristicValueSpecification"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "CharacteristicSpecification":"#/components/schemas/CharacteristicSpecification",
                        "CharacteristicSpecificationOracle":"#/components/schemas/CharacteristicSpecificationOracle",
                        "ProductOfferCharacteristicOracle":"#/components/schemas/ProductOfferCharacteristicOracle"
                    }
                }
            },
            "CharacteristicSpecificationOracle":{
                "title":"CharacteristicSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "characteristicType":{
                                "type":"string",
                                "description":"Denotes if the characteristics is of type SKU",
                                "enum":[
                                    "SKU"
                                ]
                            },
                            "displayName":{
                                "type":"string",
                                "description":"Allows to define alternate friendly name"
                            },
                            "version":{
                                "type":"string",
                                "description":"attribute version"
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "lifecycleStatus":{
                                "type":"string",
                                "description":"Used to indicate the current lifecycle status"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "lastUpdate":{
                                "type":"string",
                                "format":"date-time",
                                "description":"A date time (DateTime). Date and time of the last update of the attribute"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the attribute"
                            },
                            "sensitive":{
                                "type":"boolean",
                                "description":"Indicates the sensitive information available"
                            },
                            "runtimeFilterable":{
                                "type":"boolean",
                                "description":"Allows attribute to be exposed these characteristics as filter criteria"
                            },
                            "fulfillmentUpdatable":{
                                "type":"boolean",
                                "description":"Indicates runtime system to allow update coming from fulfillment system only for attributes that has this property set to true"
                            }
                        }
                    }
                ]
            },
            "CharacteristicSpecificationRelationship":{
                "title":"CharacteristicSpecificationRelationship",
                "type":"object",
                "description":"An aggregation, migration, substitution, dependency or exclusivity relationship between/among productSpecCharacteristics.",
                "properties":{
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of relationship such as aggregation, migration, substitution, dependency, exclusivity",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "parentSpecificationId":{
                        "type":"string",
                        "description":"the identifier of the associated product specification"
                    },
                    "characteristicSpecificationId":{
                        "type":"string",
                        "description":"the identifier for the respective characteristic"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the target product specification characteristic"
                    },
                    "parentSpecificationHref":{
                        "type":"string",
                        "description":"Hyperlink reference to the target product specification"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target product specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the productSpecCharRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "parentSpecificationId",
                    "name",
                    "relationshipType",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "CharacteristicSpecificationRelationship":"#/components/schemas/CharacteristicSpecificationRelationship",
                        "CharacteristicSpecificationRelationshipOracle":"#/components/schemas/CharacteristicSpecificationRelationshipOracle"
                    }
                }
            },
            "CharacteristicSpecificationRelationshipOracle":{
                "title":"CharacteristicSpecificationRelationshipOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicSpecificationRelationship"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "displayName":{
                                "type":"string",
                                "description":"Allows to define alternate friendly name"
                            },
                            "charSpecSeq":{
                                "type":"integer",
                                "description":"The order in which a CharacteristicSpecification appears within another CharacteristicSpecification that defines a grouping of CharacteristicSpecifications. For example, a grouping may represent the name of an individual. The given name is first, the middle name is second, and the last name is third."
                            },
                            "valueType":{
                                "type":"string",
                                "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth",
                                "enum":[
                                    "STRING",
                                    "NUMBER",
                                    "OBJECT",
                                    "ARRAY",
                                    "DECIMAL",
                                    "BOOLEAN",
                                    "DATE",
                                    "DATETIME",
                                    "URL"
                                ]
                            },
                            "specificationType":{
                                "type":"string",
                                "description":"Indicates parent resource type of the charSpecRelationship"
                            },
                            "charValueSpecRelationship":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CharacteristicValueSpecificationRelationshipOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "CharacteristicValueSpecificationRelationshipOracle":{
                "title":"CharacteristicValueSpecificationRelationshipOracle",
                "type":"object",
                "description":"A number or text that can be assigned to a CharacteristicValueSpecificationRelationship.",
                "properties":{
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"A discrete value that the characteristicValueRelationship can take on. the value type is defined by 'valueType' characteristic"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text, and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "URL"
                        ]
                    },
                    "parentValue":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"A discrete value that the parent characteristicValueRelationship can take on. the value type is defined by 'valueType' characteristic"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of relationship such as aggregation, migration, substitution, dependency, exclusivity",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY",
                            "MAPS_TO"
                        ]
                    }
                }
            },
            "CharacteristicValueSpecification":{
                "title":"CharacteristicValueSpecification",
                "type":"object",
                "description":"A number or text that can be assigned to a ProductSpecCharacteristic.",
                "properties":{
                    "isDefault":{
                        "type":"boolean",
                        "description":"Indicates if the value is the default value for a characteristic"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Could be minutes, GB...",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "valueFrom":{
                        "type":"string",
                        "description":"The low range value that a characteristic can take on"
                    },
                    "valueTo":{
                        "type":"string",
                        "description":"The upper range value that a characteristic can take on"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text, and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "URL"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are \"open\", \"closed\", \"closedBottom\" and \"closedTop\".",
                        "enum":[
                            "OPEN",
                            "CLOSED",
                            "CLOSED_BOTTOM",
                            "CLOSED_TOP"
                        ]
                    },
                    "regex":{
                        "type":"string",
                        "description":"Regular expression to define constraint on the allowed value"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ProductSpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "CharacteristicValueSpecification":"#/components/schemas/CharacteristicValueSpecification",
                        "StringCharacteristicValueSpecification":"#/components/schemas/StringCharacteristicValueSpecification",
                        "ObjectCharacteristicValueSpecification":"#/components/schemas/ObjectCharacteristicValueSpecification",
                        "StringArrayCharacteristicValueSpecification":"#/components/schemas/StringArrayCharacteristicValueSpecification",
                        "MapCharacteristicValueSpecification":"#/components/schemas/MapCharacteristicValueSpecification",
                        "NumberCharacteristicValueSpecification":"#/components/schemas/NumberCharacteristicValueSpecification",
                        "MapArrayCharacteristicValueSpecification":"#/components/schemas/MapArrayCharacteristicValueSpecification",
                        "ObjectArrayCharacteristicValueSpecification":"#/components/schemas/ObjectArrayCharacteristicValueSpecification",
                        "NumberArrayCharacteristicValueSpecification":"#/components/schemas/NumberArrayCharacteristicValueSpecification",
                        "IntegerCharacteristicValueSpecification":"#/components/schemas/IntegerCharacteristicValueSpecification",
                        "IntegerArrayCharacteristicValueSpecification":"#/components/schemas/IntegerArrayCharacteristicValueSpecification",
                        "StringCharacteristicValueSpecificationOracle":"#/components/schemas/StringCharacteristicValueSpecificationOracle",
                        "ObjectCharacteristicValueSpecificationOracle":"#/components/schemas/ObjectCharacteristicValueSpecificationOracle",
                        "StringArrayCharacteristicValueSpecificationOracle":"#/components/schemas/StringArrayCharacteristicValueSpecificationOracle",
                        "MapCharacteristicValueSpecificationOracle":"#/components/schemas/MapCharacteristicValueSpecificationOracle",
                        "NumberCharacteristicValueSpecificationOracle":"#/components/schemas/NumberCharacteristicValueSpecificationOracle",
                        "MapArrayCharacteristicValueSpecificationOracle":"#/components/schemas/MapArrayCharacteristicValueSpecificationOracle",
                        "ObjectArrayCharacteristicValueSpecificationOracle":"#/components/schemas/ObjectArrayCharacteristicValueSpecificationOracle",
                        "NumberArrayCharacteristicValueSpecificationOracle":"#/components/schemas/NumberArrayCharacteristicValueSpecificationOracle",
                        "IntegerCharacteristicValueSpecificationOracle":"#/components/schemas/IntegerCharacteristicValueSpecificationOracle",
                        "IntegerArrayCharacteristicValueSpecificationOracle":"#/components/schemas/IntegerArrayCharacteristicValueSpecificationOracle"
                    }
                }
            },
            "StringCharacteristicValueSpecification":{
                "title":"StringCharacteristicValueSpecification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"string",
                                "description":"A discrete value that the characteristic can take on with string as value type"
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "StringCharacteristicValueSpecification":"#/components/schemas/StringCharacteristicValueSpecification",
                                "StringCharacteristicValueSpecificationOracle":"#/components/schemas/StringCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "ObjectCharacteristicValueSpecification":{
                "title":"ObjectCharacteristicValueSpecification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"object",
                                "description":"A discrete value that the characteristic can take on with object as value type"
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "ObjectCharacteristicValueSpecification":"#/components/schemas/ObjectCharacteristicValueSpecification",
                                "ObjectCharacteristicValueSpecificationOracle":"#/components/schemas/ObjectCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "StringArrayCharacteristicValueSpecification":{
                "title":"StringArrayCharacteristicValueSpecification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"array",
                                "items":{
                                    "type":"string"
                                }
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "StringArrayCharacteristicValueSpecification":"#/components/schemas/StringArrayCharacteristicValueSpecification",
                                "StringArrayCharacteristicValueSpecificationOracle":"#/components/schemas/StringArrayCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "MapCharacteristicValueSpecification":{
                "title":"MapCharacteristicValueSpecification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"object",
                                "description":"A discrete value that the characteristic can take on with object as value type"
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "MapCharacteristicValueSpecification":"#/components/schemas/MapCharacteristicValueSpecification",
                                "MapCharacteristicValueSpecificationOracle":"#/components/schemas/MapCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "NumberCharacteristicValueSpecification":{
                "title":"NumberCharacteristicValueSpecification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"number",
                                "description":"A discrete value that the characteristic can take on with number as value type"
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "NumberCharacteristicValueSpecification":"#/components/schemas/NumberCharacteristicValueSpecification",
                                "NumberCharacteristicValueSpecificationOracle":"#/components/schemas/NumberCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "MapArrayCharacteristicValueSpecification":{
                "title":"MapArrayCharacteristicValueSpecification",
                "description":"A discrete value that the characteristic can take on with array of objects as value type",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"array",
                                "items":{
                                    "type":"object"
                                }
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "MapArrayCharacteristicValueSpecification":"#/components/schemas/MapArrayCharacteristicValueSpecification",
                                "MapArrayCharacteristicValueSpecificationOracle":"#/components/schemas/MapArrayCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "ObjectArrayCharacteristicValueSpecification":{
                "title":"ObjectArrayCharacteristicValueSpecification",
                "description":"A discrete value that the characteristic can take on with array of objects as value type",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"array",
                                "items":{
                                    "type":"object"
                                }
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "ObjectArrayCharacteristicValueSpecification":"#/components/schemas/ObjectArrayCharacteristicValueSpecification",
                                "ObjectArrayCharacteristicValueSpecificationOracle":"#/components/schemas/ObjectArrayCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "NumberArrayCharacteristicValueSpecification":{
                "title":"NumberArrayCharacteristicValueSpecification",
                "description":"A discrete value that the characteristic can take on with array of numbers as value type",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"array",
                                "items":{
                                    "type":"number"
                                }
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "NumberArrayCharacteristicValueSpecification":"#/components/schemas/NumberArrayCharacteristicValueSpecification",
                                "NumberArrayCharacteristicValueSpecificationOracle":"#/components/schemas/NumberArrayCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "IntegerCharacteristicValueSpecification":{
                "title":"IntegerCharacteristicValueSpecification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "value":{
                                "type":"integer",
                                "description":"A discrete value that the characteristic can take on with integer as value type"
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "IntegerCharacteristicValueSpecification":"#/components/schemas/IntegerCharacteristicValueSpecification",
                                "IntegerCharacteristicValueSpecificationOracle":"#/components/schemas/IntegerCharacteristicValueSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "IntegerArrayCharacteristicValueSpecification":{
                "title":"IntegerArrayCharacteristicValueSpecification",
                "description":"A discrete value that the characteristic can take on with array of integers as value type",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecification"
                    },
                    {
                        "properties":{
                            "value":{
                                "type":"array",
                                "items":{
                                    "type":"integer"
                                }
                            }
                        }
                    }
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "IntegerArrayCharacteristicValueSpecification":"#/components/schemas/IntegerArrayCharacteristicValueSpecification",
                        "IntegerArrayCharacteristicValueSpecificationOracle":"#/components/schemas/IntegerArrayCharacteristicValueSpecificationOracle"
                    }
                }
            },
            "CharacteristicValueSpecificationOracle":{
                "title":"CharacteristicValueSpecificationOracle",
                "type":"object",
                "description":"A number or text that can be assigned to a ProductSpecCharacteristic.",
                "properties":{
                    "attachment":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/Attachment"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentRef"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "Attachment":"#/components/schemas/Attachment",
                                    "AttachmentOracle":"#/components/schemas/AttachmentOracle",
                                    "AttachmentRef":"#/components/schemas/AttachmentRef"
                                }
                            }
                        }
                    },
                    "valueCode":{
                        "type":"string",
                        "description":"A optional code for the value where applicable, like RGB for color code."
                    },
                    "valueRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ValueRelationshipOracle"
                        }
                    },
                    "sequence":{
                        "type":"integer",
                        "description":"Indicates the sequence where attribute values appear during runtime"
                    }
                }
            },
            "StringCharacteristicValueSpecificationOracle":{
                "title":"StringCharacteristicValueSpecification",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/StringCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "ObjectCharacteristicValueSpecificationOracle":{
                "title":"ObjectCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ObjectCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "StringArrayCharacteristicValueSpecificationOracle":{
                "title":"StringArrayCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/StringArrayCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "MapCharacteristicValueSpecificationOracle":{
                "title":"MapCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/MapCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "NumberCharacteristicValueSpecificationOracle":{
                "title":"NumberCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/NumberCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "MapArrayCharacteristicValueSpecificationOracle":{
                "title":"MapArrayCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/MapArrayCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "ObjectArrayCharacteristicValueSpecificationOracle":{
                "title":"ObjectArrayCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ObjectArrayCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "NumberArrayCharacteristicValueSpecificationOracle":{
                "title":"NumberArrayCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/NumberArrayCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "IntegerCharacteristicValueSpecificationOracle":{
                "title":"IntegerCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/IntegerCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "IntegerArrayCharacteristicValueSpecificationOracle":{
                "title":"IntegerArrayCharacteristicValueSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/IntegerArrayCharacteristicValueSpecification"
                    },
                    {
                        "$ref":"#/components/schemas/CharacteristicValueSpecificationOracle"
                    }
                ]
            },
            "SpecCharacteristicValueOracle":{
                "title":"SpecCharacteristicValueOracle",
                "type":"object",
                "description":"A number or text that can be assigned to a SpecCharacteristic.",
                "properties":{
                    "isDefault":{
                        "type":"boolean",
                        "description":"Indicates if the value is the default value for a characteristic"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Could be minutes, GB..."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"A discrete value that the characteristic can take on. the value type is defined by 'valueType' characteristic"
                    },
                    "valueFrom":{
                        "type":"string",
                        "description":"The low range value that a characteristic can take on"
                    },
                    "valueTo":{
                        "type":"string",
                        "description":"The upper range value that a characteristic can take on"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text, and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are \"open\", \"closed\", \"closedBottom\" and \"closedTop\"."
                    },
                    "regex":{
                        "type":"string",
                        "description":"Regular expression to define constraint on the allowed value"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the SpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "value",
                    "@type"
                ]
            },
            "PLASpecCharacteristic":{
                "title":"PLASpecCharacteristic",
                "type":"object",
                "description":"A characteristic quality or distinctive feature of a PlaSpecification.  The characteristic can be take on a discrete value, such as color, can take on a range of values, (for example, sensitivity of 100-240 mV), or can be derived from a formula (for example, usage time (hrs) = 30 - talk time *3). Certain characteristics, such as color, may be configured during the ordering or some other process.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the PLASpecCharacteristic"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the PLASpecCharacteristic is"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"If true, the Boolean indicates that the PLASpecCharacteristic is configurable"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the PLASpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this characteristic"
                    },
                    "@valueSchemaLocation":{
                        "type":"string",
                        "description":"This (optional) field provides a link to the schema describing the value type."
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality"
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality"
                    },
                    "isUnique":{
                        "type":"boolean",
                        "description":"An indicator that specifies if a value is unique for the specification. Possible values are; \"unique while value is in effect\" and \"unique whether value is in effect or not\""
                    },
                    "regex":{
                        "type":"string",
                        "description":"A rule or principle represented in regular expression used to derive the value of a characteristic value"
                    },
                    "extensible":{
                        "type":"boolean",
                        "description":"An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for a product"
                    },
                    "plaSpecCharRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PLASpecCharRelationship"
                        }
                    },
                    "plaSpecCharacteristicValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PLASpecCharacteristicValue"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "PLASpecCharRelationship":{
                "title":"PLASpecCharRelationship",
                "type":"object",
                "description":"An aggregation, migration, substitution, dependency or exclusivity relationship between/among PLASpecCharacteristic.",
                "properties":{
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of relationship such as aggregation, migration, substitution, dependency, exclusivity",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "charSpecSeq":{
                        "type":"integer",
                        "description":"The order in which a CharacteristicSpecification appears within another CharacteristicSpecification that defines a grouping of CharacteristicSpecifications.\n\nFor example, a grouping may represent the name of an individual. The given name is first, the middle name is second, and the last name is third.\n"
                    },
                    "id":{
                        "type":"string",
                        "description":"the identifier of the associated pla specification"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the target pla specification characteristic"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the target pla specification"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target pla specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the plaSpecCharRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "id",
                    "name",
                    "relationshipType",
                    "@type"
                ]
            },
            "PLASpecCharacteristicValue":{
                "title":"PLASpecCharacteristicValue",
                "type":"object",
                "description":"A number or text that can be assigned to a PLASpecCharacteristic.",
                "properties":{
                    "isDefault":{
                        "type":"boolean",
                        "description":"Indicates if the value is the default value for a characteristic"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Could be minutes, GB...",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"A discrete value that the characteristic can take on. the value type is defined by 'valueType' characteristic"
                    },
                    "valueFrom":{
                        "type":"string",
                        "description":"The low range value that a characteristic can take on"
                    },
                    "valueTo":{
                        "type":"string",
                        "description":"The upper range value that a characteristic can take on"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text, and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are \"open\", \"closed\", \"closedBottom\" and \"closedTop\".",
                        "enum":[
                            "OPEN",
                            "CLOSED",
                            "CLOSED_BOTTOM",
                            "CLOSED_TOP"
                        ]
                    },
                    "regex":{
                        "type":"string",
                        "description":"Regular expression to define constraint on the allowed value"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the PLASpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "value",
                    "@type"
                ]
            },
            "CategoryRef":{
                "title":"CategoryRef",
                "type":"object",
                "description":"Category reference. The category resource is used to group product offerings, service and resource candidates in logical containers. Categories can contain other categories and/or product offerings, resource or service candidates.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique reference of the category"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the category"
                    },
                    "version":{
                        "type":"string",
                        "description":"Category version"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the category"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the CategoyRef"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  of CategoryRef"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of the referred Category"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "ChoiceRelationshipOracle":{
                "title":"ChoiceRelationshipOracle",
                "description":"Denotes the choice bundle which is overriden by this bundle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "parentBundle":{
                                "$ref":"#/components/schemas/ProductOfferingRef"
                            }
                        }
                    }
                ]
            },
            "ProductOfferingRef":{
                "title":"ProductOfferingRef",
                "type":"object",
                "description":"ProductOffering reference. A product offering represents entities that are orderable from the provider of the catalog, this resource includes pricing information.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the product offering"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the product offering"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the product offering"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of this ProductOfferingRef"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ProductOfferingRef"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of the referred product offering"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the product offering"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductOfferingRef":"#/components/schemas/ProductOfferingRef",
                        "BundledProductOffering":"#/components/schemas/BundledProductOffering",
                        "BundledProductOfferingChoiceOracle":"#/components/schemas/BundledProductOfferingChoiceOracle",
                        "BundledProductOfferingOracle":"#/components/schemas/BundledProductOfferingOracle"
                    }
                }
            },
            "EntityRef":{
                "title":"EntityRef",
                "type":"object",
                "description":"Entity reference. It refers to the entity that is impacted by promotion action.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the entity"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the entity"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the entity"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of this entity"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the entity"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of the referred entity"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "PromotionRef":{
                "title":"PromotionRef",
                "type":"object",
                "description":"Promotion reference. ",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the Promotiong"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the Promotiong"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the Promotion"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of this Promotion"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the Promotion"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of the referred Promotion"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "ProductOfferingRefOracle":{
                "title":"ProductOfferingRefOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "version":{
                                "type":"string",
                                "description":"Version of the product offering"
                            },
                            "lifecycleStatus":{
                                "type":"string",
                                "description":"lifecycleStatus of the product offering"
                            },
                            "isBundle":{
                                "type":"boolean",
                                "description":"Indicates if the offer is simple or composite"
                            }
                        }
                    }
                ]
            },
            "PricingLogicAlgorithmRef":{
                "title":"PricingLogicAlgorithmRef",
                "type":"object",
                "description":"The Pricing Logic Algorithm entity represents an instantiation of an interface specification to external rating function (without a modeled bahavior in SID). Some of the parameters of the interface definiition may be already set (such as price per unit) and some may be gathered during the rating process from the event (such as call duration) or from ProductCharacteristicValues (such as assigned bandwidth)",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"unique id of the PLA"
                    },
                    "href":{
                        "type":"string",
                        "description":"hyperlink reference of this PLA"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name given to the PLA"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the PLA"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "plaSpecId":{
                        "type":"string",
                        "description":"id of corresponding PLA specification"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of this PricingLogicAlgorithRef"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the PricingLogicAlgorithRef"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "PricingLogicAlgorithmRef":"#/components/schemas/PricingLogicAlgorithmRef",
                        "PlaQuantityRangeRefOracle":"#/components/schemas/PlaQuantityRangeRefOracle"
                    }
                }
            },
            "PlaQuantityRangeRefOracle":{
                "title":"PlaQuantityRangeRefOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PricingLogicAlgorithmRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "pricingType":{
                                "type":"string",
                                "description":"Pricing Type of the PricingLogicAlgorithm",
                                "enum":[
                                    "SIMPLE",
                                    "TIERED"
                                ]
                            }
                        }
                    }
                ]
            },
            "PlaSpecificationRef":{
                "title":"PlaSpecificationRef",
                "type":"object",
                "description":"A pricing logic algorithm specification reference. A PricingLogicAlgorithmSpec is a detailed description of a tangible or intangible object made available externally in the form of a PricingLogicAlgorithm to customers or other parties playing a party role.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the pricing logic algorithm specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the pricing logic algorithm specification."
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the pricing logic algorithm specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the pricing logic algorithm specification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of PLASpecification."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"class type of referred pricing logic algorithm Specification."
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "SLARef":{
                "title":"SLARef",
                "type":"object",
                "description":"ServiceLevelAgreement reference: A service level agreement (SLA) is a type of agreement that represents a formal negotiated agreement between two parties designed to create a common understanding about products, services, priorities, responsibilities, and so forth. The SLA is a set of appropriate procedures and targets formally or informally agreed between parties in order to achieve and maintain specified Quality of Service.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of service level agreement"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the service level agreement"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the service level agreement"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"class type of referred Service Level Agreement"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of Servie Level Agreement."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    }
                },
                "required":[
                    "id",
                    "@referredType",
                    "@type"
                ]
            },
            "ProductSpecificationRef":{
                "title":"ProductSpecificationRef",
                "type":"object",
                "description":"Product specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the product specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the product specification"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the product specification"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the product specification"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"class type of referred Product Specification"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of ProductSpecificationRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "targetProductSchema":{
                        "$ref":"#/components/schemas/TargetProductSchema"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "ChannelRef":{
                "type":"object",
                "title":"ChannelRef",
                "description":"Channel reference. The channel defines the channel for selling product   offerings.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the channel"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the channel"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the channel"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"(Class) type of the referred channel like DistributionChannel,   SalesChannel and so on"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of channel."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    }
                },
                "required":[
                    "id",
                    "@referredType",
                    "@type"
                ]
            },
            "ServiceCandidateRef":{
                "title":"ServiceCandidateRef",
                "type":"object",
                "description":"ServiceCandidate reference. ServiceCandidate is an entity that makes a ServiceSpecification available to a catalog.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the service candidate"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the service candidate"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the service candidate"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the service candidate"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of ServiceCandidateRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> the base (class) type of this REST resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The Class type of  referred Service Candidate"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ServiceCandidateRef":"#/components/schemas/ServiceCandidateRef",
                        "ServiceCandidateRefOracle":"#/components/schemas/ServiceCandidateRefOracle"
                    }
                }
            },
            "ServiceCandidateRefOracle":{
                "title":"ServiceCandidateRefOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ServiceCandidateRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "serviceCode":{
                                "type":"string",
                                "description":"Code to service specification"
                            }
                        }
                    }
                ]
            },
            "ResourceCandidateRef":{
                "type":"object",
                "title":"ResourceCandidateRef",
                "description":"ResourceCandidate reference: A resource candidate is an entity that makes a ResourceSpecification available to a catalog.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the resource candidate"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the resource candidate"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the resource candidate"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the resource candidate"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The Class type of referred Resource Candidate"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of Resource Candidate."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> the base (class) type of this REST resource"
                    }
                },
                "required":[
                    "id",
                    "@referredType",
                    "@type"
                ]
            },
            "MarketSegmentRef":{
                "title":"MarketSegmentRef",
                "type":"object",
                "description":"provides references to the corresponding market segment as target of   product offerings. A market segment is grouping of Parties, GeographicAreas,   SalesChannels, and so forth.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the market segment"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the market segment"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the market segment"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"(Class) type of the referred market segment"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of market segment."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> the base (class) type of this REST resource"
                    }
                },
                "required":[
                    "id",
                    "@referredType",
                    "@type"
                ]
            },
            "ServiceSpecificationRef":{
                "title":"ServiceSpecificationRef",
                "type":"object",
                "description":"Service specification reference: ServiceSpecification(s) required to realize a ProductSpecification.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the service specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the serviceSpecification"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the requiredServiceSpecification"
                    },
                    "version":{
                        "type":"string",
                        "description":"Service specification version"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of associated service specification"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of ServiceSpecificationRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "targetServiceSchema":{
                        "$ref":"#/components/schemas/TargetServiceSchema"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ServiceSpecificationRef":"#/components/schemas/ServiceSpecificationRef",
                        "ServiceSpecificationRefOracle":"#/components/schemas/ServiceSpecificationRefOracle"
                    }
                }
            },
            "ServiceSpecificationRefOracle":{
                "title":"ServiceSpecificationRefOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ServiceSpecificationRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "serviceCode":{
                                "type":"string",
                                "description":"Code to service specification"
                            },
                            "role":{
                                "type":"string",
                                "description":"Service specification role",
                                "enum":[
                                    "PRIMARY",
                                    "AUXILIARY"
                                ]
                            },
                            "isApplicableToChildServices":{
                                "type":"boolean",
                                "description":"Indicates if applicable to child services."
                            }
                        }
                    }
                ]
            },
            "ProductSpecificationRelationship":{
                "title":"ProductSpecificationRelationship",
                "type":"object",
                "description":"A migration, substitution, dependency or exclusivity relationship between/among product specifications.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the productSpecification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the productSpecification"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of relationship such as migration, substitution, dependency, exclusivity",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY",
                            "PARENT"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the referred product specification"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the referred product specification"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of associated product specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "characteristic":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/CharacteristicSpecificationOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttributeRefOracle"
                                }
                            ]
                        }
                    }
                },
                "required":[
                    "id",
                    "relationshipType"
                ]
            },
            "ResourceSpecificationRef":{
                "title":"ResourceSpecificationRef",
                "type":"object",
                "description":"Resource Specification reference: The ResourceSpecification is required to realize a ProductSpecification.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the resource specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the resource specification"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the requiredResourceSpecification"
                    },
                    "version":{
                        "type":"string",
                        "description":"Resource specification version"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of associated resource specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "BundledProductSpecification":{
                "title":"BundledProductSpecification",
                "type":"object",
                "description":"A type of ProductSpecification that belongs to a grouping of ProductSpecifications made available to the market. It inherits of all attributes of ProductSpecification.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the product specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the product specification"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the product specification"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the corresponding product specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@type"
                ]
            },
            "Quantity":{
                "title":"Quantity",
                "description":"A number and unit representing how many of an ProductOffering is available at the offered price.",
                "type":"object",
                "properties":{
                    "amount":{
                        "type":"number",
                        "description":"A quantity of something, typically the total of a thing or things in number, size, value, extent, or money."
                    },
                    "units":{
                        "type":"string",
                        "description":"The unit of measure for the quantity, such as meters, cubic yards, kilograms [ISO 80000], and the currency referring to [ISO 4217].",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    }
                },
                "required":[
                    "units",
                    "amount"
                ]
            },
            "AlterationBasedOnOracle":{
                "title":"AlterationBasedOnOracle",
                "description":"A number, unit and an expression representing the relative alteration.",
                "type":"object",
                "properties":{
                    "expression":{
                        "type":"string",
                        "description":"The expression used for alteration."
                    },
                    "quantity":{
                        "type":"number",
                        "description":"The relative quantity based on which the alteration is done."
                    },
                    "units":{
                        "type":"string",
                        "description":"The units of quantity based on which the alteration is done, it can be any currency or non currency value configured as a balance element."
                    },
                    "roundingMethod":{
                        "type":"string",
                        "description":"The rounding method to be applied on the quantity",
                        "enum":[
                            "NONE",
                            "ROUND_DOWN"
                        ]
                    }
                }
            },
            "EntitlementMetricsQuantityOracle":{
                "title":"EntitlementMetricsQuantityOracle",
                "description":"A number and unit representing entitlement metrics quantity",
                "type":"object",
                "properties":{
                    "amount":{
                        "type":"number",
                        "description":"A quantity of something, typically the total of a thing or things in number."
                    },
                    "units":{
                        "type":"string",
                        "description":"The unit of measure for the quantity.",
                        "enum":[
                            "ENTL_MTCS_UNT_PRCT",
                            "ENTL_MTCS_UNT_HRS",
                            "ENTL_MTCS_UNT_MTS",
                            "ENTL_MTCS_UNT_PNTS",
                            "ENTL_MTCS_UNT_DAYS",
                            "ENTL_MTCS_UNT_SCDS"
                        ]
                    }
                },
                "required":[
                    "units",
                    "amount"
                ]
            },
            "EntitlementQuantityOracle":{
                "title":"EntitlementQuantityOracle",
                "description":"A number and unit representing entitlement unit",
                "type":"object",
                "properties":{
                    "amount":{
                        "type":"number",
                        "description":"A quantity of something, typically the total of a thing or things in number."
                    },
                    "units":{
                        "type":"string",
                        "description":"The unit of measure for the quantity.",
                        "enum":[
                            "ENTL_UNIT_ORDERS",
                            "ENTL_UNIT_SERREQ"
                        ]
                    }
                },
                "required":[
                    "units",
                    "amount"
                ]
            },
            "TermDuration":{
                "title":"TermDuration",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/Quantity"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "units":{
                                "type":"string",
                                "description":"Term duration units",
                                "enum":[
                                    "DAYS",
                                    "MONTHS",
                                    "WEEKS",
                                    "YEARS"
                                ]
                            }
                        }
                    }
                ]
            },
            "Money":{
                "title":"Money",
                "description":"The amount of money that characterizes the price.",
                "type":"object",
                "properties":{
                    "value":{
                        "type":"number",
                        "description":"A positive floating point number"
                    },
                    "unit":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency)"
                    }
                },
                "required":[
                    "value",
                    "unit"
                ]
            },
            "ProductOfferingPriceRelationship":{
                "title":"ProductOfferingPriceRelationship",
                "type":"object",
                "description":"this object represents a pop relationship",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of ProductOfferingPriceRelationship"
                    },
                    "href":{
                        "type":"string",
                        "description":"hyperlink reference of the associated ProductOfferingPriceRelationship"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of  the associated ProductOfferingPriceRelationship"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of  the associated popRelationship"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"POP relationship type",
                        "enum":[
                            "DISCOUNT",
                            "MARKUP",
                            "OVERRIDE",
                            "DISCOUNT_OVERRIDE",
                            "DEPENDENCY"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"(Class) type of the associated ProductOfferingPriceRelationship"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The (class) type of the referred ProductOfferingPriceRelationship"
                    }
                },
                "required":[
                    "id",
                    "relationshipType",
                    "@type",
                    "@referredType"
                ]
            },
            "ProductOfferingPriceRelationshipOracle":{
                "title":"ProductOfferingPriceRelationshipOracle",
                "description":"this object represents a pop relationship",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceRelationship"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "version":{
                                "type":"string",
                                "description":"Version of the price being refered."
                            },
                            "sequential":{
                                "type":"boolean",
                                "description":"Indicates whether the price is applied sequential or not"
                            },
                            "discountMode":{
                                "type":"string",
                                "description":"Indicates the mode of processing discounts.",
                                "enum":[
                                    "SEQUENTIAL",
                                    "PARALLEL"
                                ]
                            }
                        }
                    }
                ]
            },
            "BundledProductOfferingPriceRelationship":{
                "title":"BundledProductOfferingPriceRelationship",
                "type":"object",
                "description":"This object represents a bundle of the product offering prices of all the component offers assosiated within a bundle.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the associated product offering"
                    },
                    "href":{
                        "type":"string",
                        "description":"hyperlink reference of the associated product offering"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of  the associated product offering"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of  the associated product offering price"
                    },
                    "@type":{
                        "type":"string",
                        "description":"(Class) type of the associated product offering"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The (class) type of the referred price"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"This field provides a link to the schema describing this REST resource"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "ProductSpecificationCharacteristicValueUse":{
                "title":"ProductSpecificationCharacteristicValueUse",
                "type":"object",
                "description":"A use of the ProdSpecCharacteristicValue by a ProductOffering to which additional properties (attributes) apply or override the properties of similar properties contained in ProdSpecCharacteristicValue. It should be noted that characteristics which their value(s) addressed by this object must exist in corresponding product specification and has to be configurable. The available characteristic values for a ProductSpecCharacteristic in a Product specification can be modified at the ProductOffering level. For example, a characteristic 'Color' might have values White, Blue, Green, and Red. But, the list of values can be restricted to e.g. White and Blue in an associated product offering. It should be noted that the list of values in 'ProductSpecificationCharacteristicValueUse' is a strict subset of the list of values as defined in the corresponding product specification characteristics.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of respective characteristic"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the associated productSpecCharacteristic"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the productSpecCharacteristic is"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "URL"
                        ]
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"Read only value, if true, the Boolean indicates that the productSpecCharacteristic is configurable"
                    },
                    "productSpecCharacteristicValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CharacteristicValueSpecification"
                        }
                    },
                    "productSpecification":{
                        "$ref":"#/components/schemas/ProductSpecificationRef"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of CharacteristicValue."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    }
                },
                "required":[
                    "name",
                    "productSpecCharacteristicValue",
                    "productSpecification",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProdSpecCharValueUse":"#/components/schemas/ProductSpecificationCharacteristicValueUse",
                        "ProdSpecCharValueUseOracle":"#/components/schemas/ProductSpecificationCharacteristicValueUseOracle"
                    }
                }
            },
            "ProductSpecificationCharacteristicValueUseOracle":{
                "title":"ProductSpecificationCharacteristicValueUseOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductSpecificationCharacteristicValueUse"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "displayName":{
                                "type":"string",
                                "description":"display name for attribute."
                            }
                        }
                    }
                ]
            },
            "SpecCharValueUse":{
                "title":"SpecCharValueUse",
                "type":"object",
                "description":"A use of the SpecCharacteristicValue by a ProductOffering to which additional properties (attributes) apply or override the properties of similar properties contained in SpecCharacteristicValue. It should be noted that characteristics which their value(s) addressed by this object must exist in corresponding specification. The available characteristic values for a SpecCharacteristic in a specification can be modified at the ProductOffering level. For example, a characteristic 'Color' might have values White, Blue, Green, and Red. But, the list of values can be restricted to e.g. White and Blue in an associated product offering. It should be noted that the list of values in 'SpecCharValueUse' is a strict subset of the list of values as defined in the corresponding specification characteristics.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the associated specCharacteristic"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the productSpecCharacteristic is"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle",
                        "description":"The period for which the specCharacteristic is valid"
                    },
                    "specCharacteristicValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/SpecCharacteristicValueOracle"
                        }
                    },
                    "specification":{
                        "$ref":"#/components/schemas/ProductSpecificationRef"
                    }
                },
                "required":[
                    "name",
                    "specCharacteristicValue",
                    "specification"
                ]
            },
            "CustomProfSpecCharValueUse":{
                "title":"CustomProfSpecCharValueUse",
                "type":"object",
                "description":"A use of the CustomProfSpecCharValue by an entity to which additional properties (attributes) apply or override the properties of similar properties contained in ProdSpecCharacteristicValue. It should be noted that characteristics which their value(s) addressed by this object must exist in corresponding product specification. The available characteristic values for a ProductSpecCharacteristic in a Product specification can be modified at the ProductOffering level. For example, a characteristic 'Color' might have values White, Blue, Green, and Red. But, the list of values can be restricted to e.g. White and Blue in an associated product offering. It should be noted that the list of values in 'ProductSpecificationCharacteristicValueUse' is a strict subset of the list of values as defined in the corresponding product specification characteristics.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the associated customProfileSpecCharacteristic"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the customProfileSpecCharacteristic is"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "customProfileSpecCharValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustomProfileSpecCharValue"
                        }
                    },
                    "customProfileSpec":{
                        "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                    }
                },
                "required":[
                    "name",
                    "customProfileSpecCharValue",
                    "customProfileSpec"
                ]
            },
            "CustomProfileSpecCharValue":{
                "title":"CustomProfileSpecCharValue",
                "type":"object",
                "description":"A number or text that can be assigned to a CustomProfileSpecCharacteristic.",
                "properties":{
                    "isDefault":{
                        "type":"boolean",
                        "description":"Indicates if the value is the default value for a characteristic"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Could be minutes, GB...",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"A discrete value that the characteristic can take on. the value type is defined by 'valueType' characteristic"
                    },
                    "valueFrom":{
                        "type":"string",
                        "description":"The low range value that a characteristic can take on"
                    },
                    "valueTo":{
                        "type":"string",
                        "description":"The upper range value that a characteristic can take on"
                    },
                    "displayText":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which can be displyed for user experience."
                    },
                    "enabled":{
                        "type":"boolean",
                        "description":"A field which used to enable or disable the value selection"
                    },
                    "sequence":{
                        "type":"integer",
                        "description":"Order sequence for the values input"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text, and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "PRODUCT_OFFER",
                            "PRODUCT_SPEC",
                            "PRODUCT_LINE",
                            "SPEC_CHAR"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are \"open\", \"closed\", \"closedBottom\" and \"closedTop\".",
                        "enum":[
                            "OPEN",
                            "CLOSED",
                            "CLOSED_BOTTOM",
                            "CLOSED_TOP"
                        ]
                    },
                    "regex":{
                        "type":"string",
                        "description":"Regular expression to define constraint on the allowed value"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ProductSpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    },
                    "valueReferenceId":{
                        "type":"string",
                        "description":"Id of the resource referenced in the specification"
                    },
                    "valueReferenceType":{
                        "type":"string",
                        "description":"Type of the resource referenced in the specification",
                        "enum":[
                            "SERVICE_SPEC"
                        ]
                    }
                },
                "required":[
                    "value",
                    "@type"
                ]
            },
            "ExternalConfigurationPropertiesOracle":{
                "title":"ExternalConfigurationPropertiesOracle",
                "type":"object",
                "description":"A use of the ExternalConfigurationPropertiesOracle by an entity to which additional properties (attributes) apply or override the properties of similar properties contained in ProdSpecCharacteristicValue. It should be noted that characteristics which their value(s) addressed by this object must exist in corresponding product specification. The available characteristic values for a ProductSpecCharacteristic in a Product specification can be modified at the ProductOffering level. For example, a characteristic 'Color' might have values White, Blue, Green, and Red. But, the list of values can be restricted to e.g. White and Blue in an associated product offering. It should be noted that the list of values in 'ProductSpecificationCharacteristicValueUse' is a strict subset of the list of values as defined in the corresponding product specification characteristics.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the associated with external configuration characteristic"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the external configuration characteristic is"
                    },
                    "sourceSystemName":{
                        "type":"string",
                        "description":"The name identifies the external system to which the configuration belongs"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "externalConfigurationValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ExternalConfigurationValueOracle"
                        }
                    }
                },
                "required":[
                    "name",
                    "externalConfigurationValue"
                ]
            },
            "TaxItem":{
                "title":"TaxItem",
                "type":"object",
                "description":"An amount of money levied on the price of a Product by a legislative body.",
                "properties":{
                    "taxAmount":{
                        "$ref":"#/components/schemas/Money"
                    },
                    "taxCategory":{
                        "type":"string",
                        "description":"A categorization of the tax rate."
                    },
                    "taxRate":{
                        "type":"number",
                        "description":"Tax rate"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "TaxItem":"#/components/schemas/TaxItem",
                        "TaxItemOracle":"#/components/schemas/TaxItemOracle"
                    }
                }
            },
            "TaxItemOracle":{
                "title":"TaxItemOracle",
                "description":"An amount of money levied on the price of a Product by a legislative body.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/TaxItem"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "taxCode":{
                                "type":"string",
                                "description":"A tax code of the tax rate."
                            },
                            "taxTime":{
                                "type":"string",
                                "description":"A tax time of the tax rate.",
                                "enum":[
                                    "NONE",
                                    "EVENT_TIME",
                                    "BILLING_TIME"
                                ]
                            },
                            "taxProvider":{
                                "type":"string",
                                "description":"A tax code for the vendor."
                            }
                        },
                        "required":[
                            "taxCode",
                            "taxProvider"
                        ]
                    }
                ]
            },
            "TaxAmount":{
                "title":"TaxAmount",
                "description":"tax amount",
                "type":"object",
                "properties":{
                    "value":{
                        "type":"number",
                        "description":"A positive floating point number"
                    },
                    "unit":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency)"
                    }
                },
                "required":[
                    "value",
                    "unit"
                ]
            },
            "PolicyRef":{
                "title":"PolicyRef",
                "type":"object",
                "description":"Policy rule reference. PolicyRule is a set of rules that are used to manage and control the state and state transitions of one or more managed objects.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"reference id to the target policy"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the target policy"
                    },
                    "version":{
                        "type":"string",
                        "description":"Policy version"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name given to the policy"
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the Policy"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The (class) type of the referred policy"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@referredType"
                ]
            },
            "ProductOfferingPriceRef":{
                "title":"ProductOfferingPriceRef",
                "type":"object",
                "description":"ProductPriceOffering reference. An amount, usually of money, that is asked for or allowed when a ProductOffering is bought, rented, or leased",
                "properties":{
                    "refId":{
                        "type":"string",
                        "description":"Unique identifier of the reference object."
                    },
                    "refName":{
                        "type":"string",
                        "description":"Name of the reference object."
                    },
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of a related entity."
                    },
                    "version":{
                        "type":"string",
                        "description":"version of a related entity."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the related entity."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the related entity."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation."
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@referredType",
                    "@type"
                ]
            },
            "ProductOfferingPriceRefOrValue":{
                "anyOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPrice"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceRef"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceAlterationOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceAllowanceOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferRolloverPriceOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOverageOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPricePlanOracle"
                    },
                    {
                        "$ref":"#/components/schemas/PenaltyPriceOracle"
                    }
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductOfferingPriceRef":"#/components/schemas/ProductOfferingPriceRef",
                        "ProductOfferingPrice":"#/components/schemas/ProductOfferingPrice",
                        "ProductOfferingPriceOracle":"#/components/schemas/ProductOfferingPriceOracle",
                        "ProductOfferPriceAlterationOracle":"#/components/schemas/ProductOfferingPriceAlterationOracle",
                        "ProductOfferPriceAllowanceOracle":"#/components/schemas/ProductOfferingPriceAllowanceOracle",
                        "ProductOfferRolloverPriceOracle":"#/components/schemas/ProductOfferRolloverPriceOracle",
                        "ProductOfferPriceOverageOracle":"#/components/schemas/ProductOfferingPriceOverageOracle",
                        "ProductOfferPricePlanOracle":"#/components/schemas/ProductOfferingPricePlanOracle",
                        "PenaltyPriceOracle":"#/components/schemas/PenaltyPriceOracle"
                    }
                }
            },
            "AgreementRef":{
                "title":"AgreementRef",
                "type":"object",
                "description":"Agreement reference. An agreement represents a contract or arrangement, either written or verbal and sometimes enforceable by law, such as a service level agreement or a customer price agreement. An agreement involves a number of other business entities, such as products, services, and resources and/or their specifications.",
                "properties":{
                    "href":{
                        "type":"string",
                        "description":"Reference of the agreement"
                    },
                    "id":{
                        "type":"string",
                        "description":"Identifier of the agreement"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the agreement"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"class type of the referred Agreement"
                    }
                },
                "required":[
                    "id",
                    "@referredType"
                ]
            },
            "ProductOfferingInfoOracle":{
                "title":"ProductOfferingInfoOracle",
                "type":"object",
                "description":"More information on the Product Offering",
                "properties":{
                    "isEligibleForService":{
                        "type":"boolean",
                        "description":"Indicates if the Product Offering is eligible for Service"
                    },
                    "isEligibleForSelfService":{
                        "type":"boolean",
                        "description":"Indicates if the Product Offering is eligible for self service"
                    },
                    "trackAsAsset":{
                        "type":"boolean",
                        "description":"When the product is purchased, you want to track it as a customer asset to allows you to create quotes and orders based on the asset."
                    },
                    "pricingCommitType":{
                        "type":"string",
                        "description":"The code is used to denote price override type.",
                        "enum":[
                            "COMMITTED",
                            "DYNAMIC"
                        ]
                    },
                    "dynamicDiscountMethod":{
                        "type":"string",
                        "description":"This code specifies whether the discount override is amount or percentage.",
                        "enum":[
                            "AMOUNT",
                            "PERCENTAGE"
                        ]
                    },
                    "fulfillmentItemCode":{
                        "$ref":"#/components/schemas/ProductSpecificationRef"
                    },
                    "isConfigurable":{
                        "type":"boolean",
                        "description":"If true, the Boolean indicates that is configurable"
                    },
                    "productType":{
                        "type":"string",
                        "description":"Used to indicate the type of product.",
                        "enum":[
                            "PACKAGE",
                            "COMMERCIAL_BUNDLE",
                            "SERVICE_BUNDLE",
                            "SERVICE",
                            "DEVICE",
                            "ACCESSORY",
                            "CHOICE",
                            "AGGREGATION",
                            "TIME_BASED_OFFER",
                            "SYSTEM_OFFER",
                            "SYSTEM_DISCOUNT",
                            "OTHERS"
                        ]
                    },
                    "isBillable":{
                        "type":"boolean",
                        "description":"A flag indicating if the product is billable or not."
                    },
                    "checkEligibility":{
                        "type":"boolean",
                        "description":"A flag indicating whether to check eligibility of product or not."
                    },
                    "returnIfDefective":{
                        "type":"boolean",
                        "description":"A flag indicating whether product can be returned If Defective."
                    },
                    "allowBYOD":{
                        "type":"boolean",
                        "description":"A flag indicating whether product offering allows you to bring your own device or not."
                    },
                    "isShippable":{
                        "type":"boolean",
                        "description":"A flag indicating whether product is shippable or not."
                    },
                    "allowManualOverride":{
                        "type":"boolean",
                        "description":"A flag indicating whether product offering allows you for manual override."
                    },
                    "overrideDefaultDiscount":{
                        "type":"boolean",
                        "description":"A flag indicating whether default discount can be overridden at run time."
                    },
                    "maximumPriceOverrideLimit":{
                        "type":"number",
                        "description":"Maximum price override limit."
                    },
                    "installationRequired":{
                        "type":"boolean",
                        "description":"A flag indicating whether installation is required for product offering."
                    },
                    "billingType":{
                        "type":"string",
                        "description":"Used to indicate a billing of product.",
                        "enum":[
                            "SUBSCRIPTION",
                            "ITEM",
                            "SPECIAL_RATING",
                            "SERVICE_BUNDLE",
                            "CHARGE_SHARE"
                        ]
                    },
                    "specialRatingType":{
                        "type":"string",
                        "description":"Indicates the type of special rating",
                        "enum":[
                            "PHONE_NUMBER"
                        ]
                    },
                    "specialRatingMaxItems":{
                        "type":"integer",
                        "description":"indicates the maxItems for special rating"
                    },
                    "compositionType":{
                        "type":"string",
                        "description":"Used to indicate composition type of product. The default value is WHOLE_ITEM.",
                        "enum":[
                            "PARTIAL_ITEM",
                            "WHOLE_ITEM"
                        ]
                    },
                    "serviceInstance":{
                        "type":"boolean",
                        "description":"A flag indicating a subscription product as a simple service bundle."
                    },
                    "billingServiceType":{
                        "type":"string",
                        "description":"Used to indicate billing service type."
                    },
                    "discountPriority":{
                        "type":"number",
                        "description":"Indicates the order in which discounts are processed."
                    },
                    "usedForAggregation":{
                        "type":"boolean",
                        "description":"A flag indicating whether product offering is used for aggregation."
                    }
                },
                "required":[
                    "productType"
                ]
            },
            "CompatibilityRulesOracle":{
                "title":"CompatibilityRulesOracle",
                "type":"object",
                "description":"specifies the compatibilty rule for the offer",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Unique name of the Compatibility Rule"
                    },
                    "subjectProduct":{
                        "type":"string",
                        "description":"Subject offer component of the compatability rule"
                    },
                    "objectProduct":{
                        "type":"string",
                        "description":"object offer component of the compatability rule"
                    },
                    "subjectProductLine":{
                        "type":"string",
                        "description":"Subject Product Line component of the compatability rule"
                    },
                    "objectProductLine":{
                        "type":"string",
                        "description":"Object Product Line component of the compatability rule"
                    },
                    "active":{
                        "type":"boolean",
                        "description":"A flag indicating if the rule is active or not"
                    },
                    "compatibilityRuleType":{
                        "type":"string",
                        "description":"Specifies the type of compatability rule",
                        "enum":[
                            "REQUIRES",
                            "EXCLUDES"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    }
                },
                "required":[
                    "name"
                ]
            },
            "BundledProductOffering":{
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingRef"
                    },
                    {
                        "type":"object",
                        "description":"Represents a containment of a product offering within another product offering, including specification of cardinality (e.g. is the bundled offering mandatory, how many times can it be instantiated in the parent product, etc.).",
                        "properties":{
                            "refId":{
                                "type":"string",
                                "description":"Unique identifier of the reference object."
                            },
                            "refName":{
                                "type":"string",
                                "description":"Name of the reference object."
                            },
                            "lifecycleStatus":{
                                "type":"string",
                                "description":"Used to indicate the current lifecycle status"
                            },
                            "bundledProductOfferingOption":{
                                "$ref":"#/components/schemas/BundledProductOfferingOption"
                            }
                        }
                    }
                ]
            },
            "BundledProductOfferingChoiceOracle":{
                "title":"BundledProductOfferingChoiceOracle",
                "description":"A type of ProductOffering that belongs to a grouping of ProductOfferings made available to the market. It inherits of all attributes of ProductOffering.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/BundledProductOffering"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "default":{
                                "type":"boolean",
                                "description":"This is for default Choice"
                            },
                            "productType":{
                                "type":"string",
                                "description":"Used to indicate the type of the product"
                            }
                        }
                    }
                ]
            },
            "BundledProductOfferingOracle":{
                "title":"BundledProductOfferingOracle",
                "description":"A type of ProductOffering that belongs to a grouping of ProductOfferings made available to the market. It inherits of all attributes of ProductOffering.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/BundledProductOffering"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "productType":{
                                "type":"string",
                                "description":"Used to indicate the type of the product"
                            },
                            "action":{
                                "type":"string",
                                "description":"Defines the action on the bundled product offering for Package offers.",
                                "enum":[
                                    "BPO_ACT_MODIFY",
                                    "BPO_ACT_DISCONNECT",
                                    "BPO_ACT_PROMPT"
                                ]
                            },
                            "externalConfigurationProperties":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ExternalConfigurationPropertiesOracle"
                                }
                            },
                            "recommendable":{
                                "type":"boolean",
                                "description":"Indicates whether the bundled product offering is recommendable."
                            },
                            "productOfferingTerm":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductOfferingTermOracle"
                                }
                            },
                            "sequence":{
                                "type":"integer",
                                "description":"Bundled offer sequence"
                            },
                            "bundledProductOfferingOptionOverride":{
                                "$ref":"#/components/schemas/BundledProductOfferingOptionOverrideOracle"
                            }
                        }
                    }
                ]
            },
            "BundledProductOfferingOption":{
                "title":"BundledProductOfferingOption",
                "type":"object",
                "description":"A set of numbers that specifies the lower and upper limits for a ProductOffering that can be procured as part of the related BundledProductOffering. Values can range from 0 to unbounded",
                "properties":{
                    "numberRelOfferLowerLimit":{
                        "type":"integer",
                        "description":"lower limit for a product offering that can be procured as part of the related BundledProductOffering"
                    },
                    "numberRelOfferUpperLimit":{
                        "type":"integer",
                        "description":"upper limit for a product offering that can be procured as part of the related BundledProductOffering"
                    },
                    "numberRelOfferDefault":{
                        "type":"integer",
                        "description":"Default number of produc offereings that should be procured as part of the related BundledProductOffering"
                    }
                },
                "required":[
                    "numberRelOfferLowerLimit",
                    "numberRelOfferUpperLimit",
                    "numberRelOfferDefault"
                ]
            },
            "BundledProductOfferingOptionOverrideOracle":{
                "title":"BundledProductOfferingOptionOverrideOracle",
                "type":"object",
                "description":"A set of numbers that override the lower and upper limits for a ProductOffering that can be procured as part of the related BundledProductOffering. Values can range from 0 to unbounded",
                "properties":{
                    "numberRelOfferLowerLimit":{
                        "type":"integer",
                        "description":"lower limit for a product offering that can be procured as part of the related BundledProductOffering"
                    },
                    "numberRelOfferUpperLimit":{
                        "type":"integer",
                        "description":"upper limit for a product offering that can be procured as part of the related BundledProductOffering"
                    },
                    "numberRelOfferDefault":{
                        "type":"integer",
                        "description":"Default number of produc offereings that should be procured as part of the related BundledProductOffering"
                    }
                }
            },
            "BundledGroupProductOfferingOracle":{
                "title":"BundledGroupProductOfferingOracle",
                "type":"object",
                "description":"A group of product offerings that can be chosen for instantiation of children of the parent product offering, for example a list of channels for selection under a TV offering. Sometimes known as Selection Group. The group can also hierarchically contain other groups.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A String. Locally unique identifier of the group, useful in case the parent product offering or group includes multiple groups."
                    },
                    "name":{
                        "type":"string",
                        "description":"A String. The name of the group of child offerings. Required to distinguish several choice groups."
                    },
                    "bundledGroupProductOfferingOption":{
                        "$ref":"#/components/schemas/BundledGroupProductOfferingOptionOracle"
                    },
                    "bundledProductOffering":{
                        "type":"array",
                        "description":"A BundledProductOffering. Child offerings, from which instances can be created as direct or hierarchically indirect children of the parent offering.",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/BundledProductOffering"
                                },
                                {
                                    "$ref":"#/components/schemas/BundledProductOfferingChoiceOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/BundledProductOfferingOracle"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "BundledProductOffering":"#/components/schemas/BundledProductOffering",
                                    "BundledProductOfferingChoiceOracle":"#/components/schemas/BundledProductOfferingChoiceOracle",
                                    "BundledProductOfferingOracle":"#/components/schemas/BundledProductOfferingOracle"
                                }
                            }
                        }
                    },
                    "@type":{
                        "type":"string",
                        "description":"A String. When sub-classing this defines the sub-class Extensible name."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"A String. When sub-classing, this defines the super-class."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A String. A URI to a JSON-Schema file that defines additional attributes and relationships."
                    }
                },
                "required":[
                    "bundledProductOffering"
                ]
            },
            "BundledGroupProductOfferingOptionOracle":{
                "title":"BundledGroupProductOfferingOptionOracle",
                "type":"object",
                "description":"Defines for a BundledProductOfferingGroup (i.e. a group of multiple child offerings of a parent product offering), how many instances from the child offerings can be chosen in total. For example facilitate the choice of between 2 and 7 channel packs from a list, and cause certain items to be selected by default.",
                "properties":{
                    "numberRelOfferLowerLimit":{
                        "type":"integer",
                        "description":"An Integer. The minimum total number of instances of the child offerings directly of hierarchically in the group that should be instantiated."
                    },
                    "numberRelOfferUpperLimit":{
                        "type":"integer",
                        "description":"An Integer. The maximum total number of instances of the child offerings directly of hierarchically in the group that should be instantiated."
                    },
                    "@type":{
                        "type":"string",
                        "description":"A String. When sub-classing this defines the sub-class Extensible name."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"A String. When sub-classing, this defines the super-class."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A String. A URI to a JSON-Schema file that defines additional attributes and relationships."
                    }
                },
                "required":[
                    "numberRelOfferLowerLimit",
                    "numberRelOfferUpperLimit"
                ]
            },
            "TimePeriod":{
                "title":"TimePeriod",
                "description":"The period for which the productOffering is valid",
                "type":"object",
                "properties":{
                    "startDateTime":{
                        "type":"string",
                        "format":"date-time",
                        "description":"An instant of time, starting at the TimePeriod"
                    },
                    "endDateTime":{
                        "type":"string",
                        "format":"date-time",
                        "description":"An instant of time, ending at the TimePeriod."
                    }
                }
            },
            "TargetServiceSchema":{
                "title":"TargetServiceSchema",
                "type":"object",
                "description":"The reference object to the schema and type of target product which is described by product specification",
                "properties":{
                    "@type":{
                        "type":"string",
                        "description":"class type of the target product"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Base class type of the target product"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing the target product"
                    }
                },
                "required":[
                    "@type",
                    "@schemaLocation"
                ]
            },
            "ConditionAttribute":{
                "title":"ConditionAttribute",
                "type":"object",
                "properties":{
                    "attribute":{
                        "type":"string",
                        "description":"Specifies the conditions fields."
                    },
                    "operation":{
                        "type":"string",
                        "description":"Specifies the operator for conditions."
                    },
                    "value":{
                        "type":"string"
                    }
                }
            },
            "PricingLogicAlgorithmSpecification":{
                "title":"PricingLogicAlgorithmSpecification",
                "type":"object",
                "description":"It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the pricing logic algorithm specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the pricing logic algorithm specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the pricing logic algorithm specification."
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the pricing logic algorithm specification is."
                    },
                    "version":{
                        "type":"string",
                        "description":"Pricing logic algorithm specification version."
                    },
                    "@type":{
                        "type":"string",
                        "description":"class type of the pricing logic algorithm specification."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type (immediate parent) of the pricing logic algorithm specification."
                    },
                    "targetProductSchema":{
                        "$ref":"#/components/schemas/TargetProductSchema"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "plaSpecCharacteristic":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PLASpecCharacteristic"
                        }
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "PricingLogicAlgorithmSpecification":"#/components/schemas/PricingLogicAlgorithmSpecification",
                        "PricingLogicAlgorithmSpecificationOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                    }
                }
            },
            "PricingLogicAlgorithmSpecificationOracle":{
                "title":"PricingLogicAlgorithmSpecificationsOracle",
                "description":"It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "plaSpecificationRelationship":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PLASpecificationRelationship"
                                }
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the Pricing Logic Algorithm Specification"
                            }
                        },
                        "discriminator":{
                            "propertyName":"@type",
                            "mapping":{
                                "OneTimePLASpecOracle":"#/components/schemas/OneTimePLASpecOracle",
                                "UsagePLASpecOracle":"#/components/schemas/UsagePLASpecOracle",
                                "RecurringPLASpecOracle":"#/components/schemas/RecurringPLASpecOracle",
                                "PricingLogicAlgorithmSpecificationOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                            }
                        }
                    }
                ]
            },
            "PLASpecificationRelationship":{
                "title":"PLASpecificationRelationship",
                "type":"object",
                "description":"A migration, substitution, dependency or exclusivity relationship between/among pla specifications.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the PLA Specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the PLA Specification"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of relationship",
                        "enum":[
                            "PARENT"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "relationshipType"
                ]
            },
            "OneTimePLASpecOracle":{
                "title":"OneTimePLASpecOracle",
                "description":"It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                    },
                    {
                        "type":"object"
                    }
                ]
            },
            "RecurringPLASpecOracle":{
                "title":"RecurringPLASpecOracle",
                "description":"It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                    },
                    {
                        "type":"object"
                    }
                ]
            },
            "UsagePLASpecOracle":{
                "title":"UsagePLASpecOracle",
                "description":"It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "usageSpecification":{
                                "$ref":"#/components/schemas/UsageSpecificationRefOracle"
                            }
                        }
                    }
                ]
            },
            "UsageSpecificationRef":{
                "title":"UsageSpecificationRef",
                "type":"object",
                "description":"Usage specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the usage specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the usage specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the usage specification."
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the usage specification."
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"(Class) type of the referred Usage Specification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of ServiceSpecificationRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "UsageSpecificationRef":"#/components/schemas/UsageSpecificationRef",
                        "UsageSpecificationRefOracle":"#/components/schemas/UsageSpecificationRefOracle"
                    }
                }
            },
            "UsageSpecificationRefOracle":{
                "title":"UsageSpecificationRefOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/UsageSpecificationRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "usageCode":{
                                "type":"string",
                                "description":"Code to usage specification"
                            }
                        }
                    }
                ]
            },
            "CustomerProfileSpecificationRef":{
                "title":"CustomerProfileSpecificationRef",
                "type":"object",
                "description":"Customer Profile specification reference.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the usage specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the usage specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the usage specification."
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the usage specification."
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"(Class) type of the referred Usage Specification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of ServiceSpecificationRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "CustomProfileSpecRefOracle":{
                "title":"CustomProfileSpecRefOracle",
                "type":"object",
                "description":"Custom Profile specification reference.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the custom specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the custom specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the custom specification."
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the custom specification."
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"(Class) type of the referred custom Specification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of customSpecificationRef."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "Project":{
                "title":"Project",
                "type":"object",
                "description":"Is a detailed description of the project",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the Project"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the Project"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the project"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that describes the project"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the object"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "Project":"#/components/schemas/Project",
                        "ProjectOracle":"#/components/schemas/ProjectOracle"
                    }
                }
            },
            "ProjectOracle":{
                "title":"ProjectOracle",
                "description":"Is a detailed description of the project",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/Project"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "currentStatus":{
                                "type":"string",
                                "description":"Used to indicate the current status before state change."
                            },
                            "action":{
                                "type":"string",
                                "description":"Used to indicate the last action performed on the project"
                            },
                            "validFor":{
                                "$ref":"#/components/schemas/TimePeriod"
                            },
                            "publishJobRef":{
                                "$ref":"#/components/schemas/PublishJobRef"
                            },
                            "projectItems":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProjectItemRef"
                                },
                                "description":"Contains the list of Catalog Objects"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "launchedDate":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of project launched"
                            },
                            "targetReleaseDate":{
                                "type":"string",
                                "format":"date",
                                "description":"Date of targeted release of project"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "approvalEnabled":{
                                "type":"boolean",
                                "description":"approval enabled flag"
                            },
                            "publishTrackingEnabled":{
                                "type":"boolean",
                                "description":"tracking enabled flag"
                            },
                            "subStatus":{
                                "type":"string",
                                "description":"sub status code"
                            },
                            "approvalHistory":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ApprovalHistory"
                                }
                            },
                            "approver":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ApproverRef"
                                }
                            },
                            "teamEnabled":{
                                "type":"boolean",
                                "description":"The flag used to identify whether team is desgined to develop the intiative."
                            },
                            "rollbackType":{
                                "type":"string",
                                "description":"The type of rollback."
                            },
                            "projectType":{
                                "type":"string",
                                "description":"The type of project to show a rollback project."
                            },
                            "team":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/TeamOracle"
                                }
                            },
                            "notification":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/NotificationOracle"
                                }
                            },
                            "projectHistory":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProjectHistory"
                                }
                            },
                            "lifecycleConfiguration":{
                                "$ref":"#/components/schemas/LifecycleConfigurationRef"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the project"
                            },
                            "sourceProject":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "attachment":{
                                "type":"array",
                                "items":{
                                    "anyOf":[
                                        {
                                            "$ref":"#/components/schemas/Attachment"
                                        },
                                        {
                                            "$ref":"#/components/schemas/AttachmentOracle"
                                        },
                                        {
                                            "$ref":"#/components/schemas/AttachmentRef"
                                        }
                                    ],
                                    "discriminator":{
                                        "propertyName":"@type",
                                        "mapping":{
                                            "Attachment":"#/components/schemas/Attachment",
                                            "AttachmentOracle":"#/components/schemas/AttachmentOracle",
                                            "AttachmentRef":"#/components/schemas/AttachmentRef"
                                        }
                                    }
                                }
                            }
                        }
                    }
                ]
            },
            "ProjectActionType":{
                "type":"string",
                "description":"Valid values for action on the project",
                "enum":[
                    "StateChange",
                    "RemoveProjectItem"
                ]
            },
            "PublishJobRef":{
                "title":"PublishJobRef",
                "type":"object",
                "description":"Publish Job reference. A Job describes the details of the publishing state",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique-Identifier for this publish Job"
                    },
                    "href":{
                        "type":"string",
                        "description":"URL serving as reference for the Job resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation."
                    }
                },
                "required":[
                    "id"
                ]
            },
            "TeamOracle":{
                "title":"TeamOracle",
                "type":"object",
                "description":"Team details of an initiative. Includes the name, role and email address of team member which is part of initiative.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of a team member."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the team member."
                    },
                    "emailAddress":{
                        "type":"string",
                        "description":"Email address of the team member"
                    },
                    "partyNumber":{
                        "type":"string",
                        "description":"Party number for a team member."
                    },
                    "roleCode":{
                        "type":"string",
                        "description":"Role code of the team member"
                    },
                    "isPrimary":{
                        "type":"boolean",
                        "description":"Indicates the team member is a primary one or not."
                    }
                }
            },
            "NotificationOracle":{
                "title":"NotificationOracle",
                "type":"object",
                "description":"Notification details of an initiative. Includes the state.",
                "properties":{
                    "state":{
                        "type":"string",
                        "description":"State for which notification is configured .i.e. lifecycleState."
                    },
                    "description":{
                        "type":"string",
                        "description":"description of notification"
                    },
                    "message":{
                        "type":"string",
                        "description":"Notification Message."
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "subscriber":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/SubscriberOracle"
                        }
                    }
                }
            },
            "ProjectItemRef":{
                "title":"ProjectItemRef",
                "type":"object",
                "description":"Project Item reference. A project Item ref represents entities that can be ProductOffering or ProductOfferingSpecification or ProductOfferingPrice etc..",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of a related entity."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the related entity."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the related entity."
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the object"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"The lifecycleStatus of the related entity."
                    },
                    "context":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProjectItemContextsOracle"
                        }
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation."
                    },
                    "@refBaseType":{
                        "type":"string",
                        "description":"The TMF base type of the target instance when needed for disambiguation."
                    },
                    "priceType":{
                        "type":"string",
                        "description":"Describes the price, such as recurring, discount, allowance, penalty, and so forth",
                        "enum":[
                            "RECURRING",
                            "ONE_TIME",
                            "USAGE",
                            "ALTERATION",
                            "ALLOWANCE",
                            "OVERAGE",
                            "PENALTY",
                            "ONE_TIME_PRICE_PLAN",
                            "RECURRING_PRICE_PLAN",
                            "USAGE_PRICE_PLAN",
                            "ALTERATION_PRICE_PLAN",
                            "OVERAGE_PRICE_PLAN",
                            "COUNTER"
                        ]
                    },
                    "ruleType":{
                        "type":"string",
                        "enum":[
                            "COMPATIBILITY",
                            "ELIGIBILITY",
                            "MIGRATION",
                            "RECOMMENDATION",
                            "CONSTRAINT"
                        ]
                    },
                    "entitlementType":{
                        "type":"string",
                        "description":"entitlememt type",
                        "enum":[
                            "ENTITLEMENT_PRICING",
                            "ENTITLEMENT_SERVICE"
                        ]
                    },
                    "promotionType":{
                        "type":"string",
                        "description":"Comma seperated promotion tags/type",
                        "enum":[
                            "AWARD",
                            "DISCOUNT",
                            "TRADE_IN",
                            "CROSS_PRODUCT_DISCOUNT"
                        ]
                    },
                    "profileType":{
                        "type":"string",
                        "description":"type of the profile",
                        "enum":[
                            "DEVICE_SPEC",
                            "BUSINESS_CONFIG",
                            "TRADE_IN",
                            "CHARGING_TERM",
                            "SUSPENSION_TERM",
                            "RETURN_CHECKLIST",
                            "ENTITY_PROFILE",
                            "RENEWAL_TERM",
                            "FINANCE_PLAN",
                            "ZONE_VALUE_MAP"
                        ]
                    },
                    "productType":{
                        "type":"string",
                        "description":"Used to indicate the type of product.",
                        "enum":[
                            "PACKAGE",
                            "COMMERCIAL_BUNDLE",
                            "SERVICE_BUNDLE",
                            "SERVICE",
                            "DEVICE",
                            "ACCESSORY",
                            "CHOICE",
                            "AGGREGATION",
                            "SYSTEM_OFFER",
                            "OTHERS"
                        ]
                    },
                    "isBundle":{
                        "type":"boolean",
                        "description":"Indicates if the entity is simple or composite."
                    },
                    "commercialName":{
                        "type":"string",
                        "description":"Display Name of the related entity."
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application."
                    },
                    "startDateTime":{
                        "type":"string",
                        "format":"date-time",
                        "description":"An instant of time, starting at the TimePeriod"
                    },
                    "endDateTime":{
                        "type":"string",
                        "format":"date-time",
                        "description":"An instant of time, ending at the TimePeriod"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created item."
                    }
                },
                "required":[
                    "id",
                    "@referredType"
                ]
            },
            "ProjectItemContextsOracle":{
                "title":"ProjectItemContextsOracle",
                "type":"object",
                "description":"Project item context objects which holds the KPI parameters",
                "properties":{
                    "type":{
                        "type":"string",
                        "description":"Used to indicate the context type",
                        "enum":[
                            "ACQUISITION",
                            "RETENTION"
                        ]
                    },
                    "params":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProjectItemContextParamsOracle"
                        }
                    }
                },
                "required":[
                    "type",
                    "params"
                ]
            },
            "ProjectItemContextParamsOracle":{
                "title":"ProjectItemContextParamsOracle",
                "type":"object",
                "description":"Project item context KPI parameters ",
                "properties":{
                    "key":{
                        "type":"string",
                        "description":"Key of the context parameter."
                    },
                    "value":{
                        "type":"string",
                        "description":"Value of the context parameter."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the context parameter."
                    }
                },
                "required":[
                    "key",
                    "value",
                    "name"
                ]
            },
            "ProjectPublishEvent":{
                "title":"ProjectPublishEvent",
                "type":"object",
                "description":"The notification data structure",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Identifier of the Process flow"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the ProcessFlow"
                    },
                    "eventId":{
                        "type":"string",
                        "description":"The identifier of the notification."
                    },
                    "eventTime":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Time of the event occurrence."
                    },
                    "eventType":{
                        "type":"string",
                        "description":"The type of the notification."
                    },
                    "correlationId":{
                        "type":"string",
                        "description":"The correlation id for this event."
                    },
                    "domain":{
                        "type":"string",
                        "description":"The domain of the event."
                    },
                    "title":{
                        "type":"string",
                        "description":"The title of the event."
                    },
                    "description":{
                        "type":"string",
                        "description":"An explanatory of the event."
                    },
                    "priority":{
                        "type":"string",
                        "description":"A priority."
                    },
                    "timeOcurred":{
                        "type":"string",
                        "format":"date-time",
                        "description":"The time the event occured."
                    },
                    "event":{
                        "$ref":"#/components/schemas/ProjectPublishEventPayload"
                    }
                }
            },
            "ProjectPublishEventPayload":{
                "title":"ProjectPublishEventPayload",
                "type":"object",
                "description":"The event data structure",
                "properties":{
                    "project":{
                        "$ref":"#/components/schemas/Publish_Job"
                    }
                }
            },
            "PublishJob":{
                "title":"PublishJob",
                "type":"object",
                "description":"Returns the project that is initiated for publishing.",
                "properties":{
                    "project":{
                        "$ref":"#/components/schemas/Project"
                    }
                }
            },
            "Publish_Job":{
                "title":"Publish_Job",
                "type":"object",
                "description":"Is a detailed description of a publish Project available externally in the form of a list of Project Items.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the Project"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the Project"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the project"
                    },
                    "acknowledgementUrl":{
                        "type":"string",
                        "description":"call back url for acknowledgement"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "projectItems":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProjectItemRef"
                        },
                        "description":"Contains the list of Project Items that are part of the publish"
                    }
                },
                "required":[
                    "id",
                    "lifecycleStatus",
                    "projectItems"
                ]
            },
            "PublishJob_Create":{
                "title":"PublishJob_Create",
                "type":"object",
                "description":"Represents a task used to initiate publishing of a project.",
                "properties":{
                    "projectId":{
                        "type":"string",
                        "description":"The identifier of the project spoke system received."
                    }
                },
                "required":[
                    "eventId",
                    "projectId",
                    "status"
                ]
            },
            "PublishingAcknowledgement":{
                "title":"PublishingAcknowledgement",
                "type":"object",
                "description":"Is a detailed description of a acknowledgment of the published project from spoke system.",
                "properties":{
                    "eventId":{
                        "type":"string",
                        "description":"The identifier of the notification spoke system received."
                    },
                    "projectId":{
                        "type":"string",
                        "description":"The identifier of the project spoke system received."
                    },
                    "message":{
                        "type":"string",
                        "description":"The error message."
                    },
                    "status":{
                        "$ref":"#/components/schemas/PublishStatusType"
                    },
                    "projectItemsStatus":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProjectItemStatusRef"
                        },
                        "description":"Contains the list of publish status of Project Items that are part of the publish"
                    }
                },
                "required":[
                    "eventId",
                    "projectId",
                    "status",
                    "message"
                ]
            },
            "PublishStatusType":{
                "title":"PublishStatusType",
                "type":"string",
                "description":"Valid values for the publish status",
                "enum":[
                    "SUCCESS",
                    "FAILURE"
                ]
            },
            "ProjectItemStatusRef":{
                "title":"ProjectItemStatusRef",
                "type":"object",
                "description":"Project Item Publish Status reference.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of a related entity."
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the object"
                    },
                    "status":{
                        "$ref":"#/components/schemas/PublishStatusType"
                    },
                    "errorLog":{
                        "type":"string",
                        "description":"error message for the failure"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation."
                    }
                },
                "required":[
                    "id",
                    "version",
                    "status",
                    "@referredType"
                ]
            },
            "ProjectRef":{
                "title":"ProjectRef",
                "type":"object",
                "description":"Project Reference",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the project"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the project"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the project"
                    },
                    "version":{
                        "type":"string",
                        "description":"Version of the project"
                    }
                },
                "required":[
                    "id"
                ]
            },
            "SubscriberOracle":{
                "title":"SubscriberOracle",
                "type":"object",
                "description":"Subscriber Reference",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"UserId of the Subscriber"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the Subscriber"
                    },
                    "emailAddress":{
                        "type":"string",
                        "description":"Email address of the Subscriber"
                    },
                    "partyNumber":{
                        "type":"string",
                        "description":"Party number for a Subscriber."
                    },
                    "roleCode":{
                        "type":"string",
                        "description":"Role code of the Subscriber"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    }
                },
                "required":[
                    "id"
                ]
            },
            "ApproverRef":{
                "title":"ApproverRef",
                "type":"object",
                "description":"Approver Reference",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"UserId of the approver"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the approver"
                    },
                    "emailAddress":{
                        "type":"string",
                        "description":"Email address of the approver"
                    },
                    "partyNumber":{
                        "type":"string",
                        "description":"Party number for a approver."
                    },
                    "roleCode":{
                        "type":"string",
                        "description":"Role code of the approver"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    }
                },
                "required":[
                    "id"
                ]
            },
            "SubjectRef":{
                "title":"SubjectRef",
                "type":"object",
                "description":"Subject Reference",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the subject"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the subject"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the subject"
                    },
                    "version":{
                        "type":"string",
                        "description":"version of the subject"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation"
                    },
                    "entityPathExpression":{
                        "type":"string",
                        "description":"Path represent the hierarchy of the component PO within the product offering(offer id along with the associated parents i.e package_Id.bundledPO_Id.atomicOffer_Id),which is used in the runtime system to identify the subject entity that may be used in some other packages."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the subject entity"
                    }
                },
                "required":[
                    "id",
                    "@referredType"
                ]
            },
            "CharValueObjectRefOracle":{
                "title":"CharValueObjectRefOracle",
                "type":"object",
                "description":"The Reference of the resource referred in CharValue of custom profile specification",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the resource referenced"
                    },
                    "href":{
                        "type":"string",
                        "description":"Unique reference of the project"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the resource"
                    },
                    "resourceType":{
                        "type":"string",
                        "description":"A string. The type of resource referenced in the char value",
                        "enum":[
                            "SERVICE_SPEC"
                        ]
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "importjob-post-request":{
                "title":"Item",
                "type":"object",
                "properties":{
                    "primaryFile":{
                        "type":"object",
                        "description":"File to upload.",
                        "format":"binary"
                    },
                    "path":{
                        "type":"string",
                        "description":"path of the file to upload"
                    }
                }
            },
            "empty-response":{
                "title":"Empty Response",
                "type":"object",
                "properties":{
                }
            },
            "TierRangeOracle":{
                "title":"TierRangeOracle",
                "type":"object",
                "description":"Contains the min and max qty for which the pricing is applicable",
                "properties":{
                    "minQuantity":{
                        "type":"integer",
                        "description":"A minimum quantity of something, typically the total of a thing or things in number, size, value, extent, or money."
                    },
                    "maxQuantity":{
                        "type":"integer",
                        "description":"A maximum quantity of something, typically the total of a thing or things in number, size, value, extent, or money."
                    },
                    "inclusivity":{
                        "type":"string",
                        "description":"Specifies whether to include the upper limit or lower limit",
                        "enum":[
                            "UPPER_INCLUSIVE",
                            "LOWER_INCLUSIVE"
                        ]
                    },
                    "productOfferingPrice":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingPriceRef"
                        }
                    }
                }
            },
            "ProductOfferCharacteristicOracle":{
                "title":"ProductOfferCharacteristicOracle",
                "description":"The ProductSpecCharacteristic addressed by this object must exist in the corresponding product specification and has to be non configurable or overridden as non configurable at the ProductOffering level.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CharacteristicSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "name":{
                                "type":"string",
                                "description":"Name of the associated productSpecCharacteristic"
                            },
                            "displayName":{
                                "type":"string",
                                "description":"Friendly name of the associated productSpecCharacteristic"
                            },
                            "description":{
                                "type":"string",
                                "description":"A narrative that explains in detail what the productSpecCharacteristic is"
                            },
                            "valueType":{
                                "type":"string",
                                "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth"
                            },
                            "configurable":{
                                "type":"boolean",
                                "description":"Read only value, if true, the Boolean indicates that the productSpecCharacteristic is configurable"
                            },
                            "productSpecification":{
                                "$ref":"#/components/schemas/ProductSpecificationRef"
                            }
                        }
                    }
                ]
            },
            "PlaCharacteristicOracle":{
                "title":"PlaCharacteristicOracle",
                "type":"object",
                "description":"A use of the ProdSpecCharacteristicValue by a ProductOffering to which additional properties (attributes) apply or override the properties of similar properties contained in ProdSpecCharacteristicValue.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the associated productSpecCharacteristic"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the productSpecCharacteristic is"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the characteristic can take on, such as numeric, text and so forth"
                    },
                    "plaCharacteristicValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PlaCharacteristicValueOracle"
                        }
                    }
                }
            },
            "PlaCharacteristicValueOracle":{
                "title":"PlaCharacteristicValueOracle",
                "type":"object",
                "description":"A number or text that can be assigned to a ProductSpecCharacteristic.",
                "properties":{
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Could be minutes, GB...",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            }
                        ],
                        "description":"A discrete value that the characteristic can take on. the value type is defined by 'valueType' characteristic"
                    }
                }
            },
            "Destination":{
                "title":"Destination",
                "type":"object",
                "properties":{
                    "PubDestinationId":{
                        "type":"string",
                        "description":"The unique identifier of the workspace destination."
                    },
                    "CreationDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"The date and time when the record was created."
                    },
                    "DestinationName":{
                        "type":"string",
                        "description":"Name of the Destination. You can filter destinations using the desitnation name. For example, DestinationName=RecordName. The DestinationName is the target-name of the Fabric systemDescriptor (TTD) for the registered spoke system projectPublishEvent endpoint."
                    },
                    "DestinationURL":{
                        "type":"string",
                        "description":"The URL of the destination."
                    },
                    "DestinationCharacteristics":{
                        "type":"string",
                        "description":"The destination characteristics stored as JSON data."
                    },
                    "DestinationDescription":{
                        "type":"string",
                        "description":"The description of the Destination."
                    },
                    "DestinationType":{
                        "type":"string",
                        "description":"Thw type of Destination like BRM etc."
                    },
                    "EntryLifecycleStatus":{
                        "type":"string",
                        "description":"The lifecycle status associated with Destination."
                    },
                    "CreatedBy":{
                        "type":"string",
                        "description":"The user who created the record."
                    },
                    "LastUpdateDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"The date and time when the destination was last updated."
                    },
                    "LastUpdateLogin":{
                        "type":"string",
                        "description":"The login of the user who last updated the destination."
                    },
                    "LastUpdatedBy":{
                        "type":"string",
                        "description":"The user who updated the record."
                    },
                    "ObjectVersionNumber":{
                        "type":"integer",
                        "description":"The attribute is used to implement optimistic locking."
                    }
                },
                "required":[
                    "DestinationName",
                    "DestinationType"
                ]
            },
            "PublishDestinationOracle":{
                "title":"PublishDestinationOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"The unique identifier of the publish destination."
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"The date and time when the record was created."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the Destination. You can filter destinations using the desitnation name. For example, DestinationName=RecordName. The DestinationName is the target-name of the Fabric systemDescriptor (TTD) for the registered spoke system projectPublishEvent endpoint."
                    },
                    "url":{
                        "type":"string",
                        "description":"The URL of the destination."
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the target constraint"
                    },
                    "characteristics":{
                        "$ref":"#/components/schemas/DestinationCharacteristicsOracle"
                    },
                    "description":{
                        "type":"string",
                        "description":"The description of the Destination."
                    },
                    "type":{
                        "type":"string",
                        "description":"The type of Destination like BRM etc."
                    },
                    "mode":{
                        "type":"string",
                        "description":"The mode of Destination like Internal etc."
                    },
                    "version":{
                        "type":"string",
                        "description":"The version of Destination."
                    },
                    "entryLifecycleStatus":{
                        "type":"string",
                        "description":"The lifecycle status associated with Destination."
                    },
                    "isDesignTime":{
                        "type":"boolean",
                        "description":"indicates the destination is DesignTime or RunTime."
                    },
                    "excludeReferences":{
                        "type":"boolean",
                        "description":"indicates the whether we need to skip the references on filter via exclusion rules."
                    },
                    "pauseEnabled":{
                        "type":"boolean",
                        "description":"indicates whether we need pause in publish between design time and run time destinations."
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"The user who created the record."
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"The date and time when the destination was last updated."
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"The user who updated the record."
                    },
                    "publishExclusionRule":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PublishExclusionRuleOracle"
                        }
                    }
                },
                "required":[
                    "name",
                    "type"
                ]
            },
            "PublishExclusionRuleOracle":{
                "type":"object",
                "title":"PublishExclusionRuleOracle",
                "description":"The publish exclusion rule",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the product rule."
                    },
                    "resourceType":{
                        "type":"string",
                        "description":"A string. The name given to the product rule"
                    },
                    "Description":{
                        "type":"string",
                        "description":"A string. Description of the product rule."
                    },
                    "ExclusionRule":{
                        "type":"string",
                        "description":"Metering Expression applicable to the product rule"
                    }
                }
            },
            "DestinationCharacteristicsOracle":{
                "type":"object",
                "title":"DestinationCharacteristicsOracle",
                "description":"The publish destination characteristics",
                "properties":{
                    "order":{
                        "type":"integer",
                        "description":"the order of publish."
                    }
                }
            },
            "SpecCharUseOracle":{
                "title":"SpecCharUseOracle",
                "type":"object",
                "description":"Characteristic used to define Constraints",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of characteristic"
                    },
                    "displayName":{
                        "type":"string",
                        "description":"Display name of characteristic"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"Relationship Type between characteristic Types",
                        "enum":[
                            "AGGREGATION"
                        ]
                    },
                    "operator":{
                        "type":"string",
                        "description":"The logic expression  operator.",
                        "enum":[
                            "EQUALS",
                            "GT",
                            "LT",
                            "GTE",
                            "LTE",
                            "NOT_EQUALS",
                            "IS_NULL",
                            "IS_NOT_NULL",
                            "CONTAINS",
                            "MAPS_TO",
                            "NOT_MAPS_TO",
                            "MATCHES",
                            "NOT_MATCHES"
                        ]
                    },
                    "charSpecSeq ":{
                        "type":"integer",
                        "description":"Characteristic sequence"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"ValueType"
                    },
                    "productSpecification":{
                        "$ref":"#/components/schemas/ProductSpecificationRef"
                    },
                    "serviceSpecification":{
                        "$ref":"#/components/schemas/ServiceSpecificationRefOracle"
                    },
                    "customerProfileSpecification":{
                        "$ref":"#/components/schemas/CustomerProfileSpecificationRef"
                    },
                    "customProfileSpecification":{
                        "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                    },
                    "usageSpecification":{
                        "$ref":"#/components/schemas/UsageSpecificationRefOracle"
                    },
                    "plaSpecification":{
                        "$ref":"#/components/schemas/PlaSpecificationRef"
                    },
                    "standardZone":{
                        "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                    },
                    "customAnalyzerRule":{
                        "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                    },
                    "timeModel":{
                        "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                    }
                },
                "required":[
                    "name",
                    "relationshipType"
                ]
            },
            "PolicyRule":{
                "title":"PolicyRule",
                "type":"object",
                "description":"The policy resource represents a policy/rule applied to an entity or entity spec.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Identifier to the policy rule"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the policy rule"
                    },
                    "version":{
                        "type":"string",
                        "description":"Policy rule version"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name given to the policy rule"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the policy rule"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the policy rule"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the policy rule"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this policy rule"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "actionExecutionStrategy":{
                        "type":"string",
                        "description":"Used to indicate the current action execution strategy for policy rule",
                        "enum":[
                            "DO_SUCCESS",
                            "DO_ALL",
                            "DO_FAILURE",
                            "DO_ALL_OR_NOTHING"
                        ]
                    },
                    "sequencedActions":{
                        "type":"string",
                        "description":"Indicates the ordering of policy action in the policy rule",
                        "enum":[
                            "MANDATORY",
                            "RECOMMENDED",
                            "BEST_EFFORT"
                        ]
                    },
                    "targetPolicyEffect":{
                        "type":"string",
                        "description":"Indicates the effect of targeted policy in the policy rule",
                        "enum":[
                            "PERMIT",
                            "DENY"
                        ]
                    },
                    "priority":{
                        "type":"number",
                        "description":"Indicatest the policy rule priority"
                    },
                    "policyActionRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PolicyActionRelationship"
                        }
                    }
                },
                "required":[
                    "name"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "PolicyRule":"#/components/schemas/PolicyRule",
                        "PolicyRuleOracle":"#/components/schemas/PolicyRuleOracle"
                    }
                }
            },
            "PolicyRuleOracle":{
                "title":"PolicyRuleOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PolicyRule"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "lastUpdate":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the last update"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated"
                            },
                            "productSpecification":{
                                "$ref":"#/components/schemas/ProductSpecificationRef"
                            },
                            "serviceSpecification":{
                                "$ref":"#/components/schemas/ServiceSpecificationRefOracle"
                            },
                            "customerProfileSpecification":{
                                "$ref":"#/components/schemas/CustomerProfileSpecificationRef"
                            },
                            "customProfileSpecification":{
                                "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                            },
                            "usageSpecification":{
                                "$ref":"#/components/schemas/UsageSpecificationRefOracle"
                            },
                            "plaSpecification":{
                                "$ref":"#/components/schemas/PlaSpecificationRef"
                            },
                            "valueMap":{
                                "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                            },
                            "standardZone":{
                                "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                            },
                            "customAnalyzerRule":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            },
                            "timeModel":{
                                "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                            },
                            "specCharUse":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/SpecCharUseOracle"
                                }
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the Price policy"
                            }
                        }
                    }
                ]
            },
            "PolicyActionRelationship":{
                "title":"PolicyActionRelationship",
                "type":"object",
                "description":"Policy actions and conditions in policy rule",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Identifier to the policy action relationship"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the policy action relationship"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name given to the policy action relationship"
                    },
                    "priority":{
                        "type":"number",
                        "description":"Order of policy actions in policy action relationship"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the policy action relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the policy action relationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this policy action relationship"
                    },
                    "constraint":{
                        "anyOf":[
                            {
                                "$ref":"#/components/schemas/PolicyConstraint"
                            },
                            {
                                "$ref":"#/components/schemas/PolicyConstraintOracle"
                            }
                        ]
                    },
                    "policyAction":{
                        "anyOf":[
                            {
                                "$ref":"#/components/schemas/PolicyAction"
                            },
                            {
                                "$ref":"#/components/schemas/PolicyActionOracle"
                            }
                        ]
                    }
                }
            },
            "PolicyConstraint":{
                "title":"PolicyConstraint",
                "type":"object",
                "description":"Policy constraint for a policy rule",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Identifier to the policy constraint"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the policy rule"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name given to the policy constraint"
                    },
                    "conditionCombinationLogic":{
                        "type":"string",
                        "description":"indicates if all conditions needs to be applied /handle in constraint logic",
                        "enum":[
                            "ANY_OF",
                            "ALL_OF",
                            "ONE_OF",
                            "NONE"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the policy rule"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the policy rule"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this policy rule"
                    },
                    "policyCondition":{
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/PolicyCondition"
                                },
                                {
                                    "$ref":"#/components/schemas/PolicyConditionOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/PolicyConditionComposite"
                                }
                            ]
                        }
                    }
                }
            },
            "PolicyCondition":{
                "title":"PolicyCondition",
                "type":"object",
                "description":"Policy condition for a policy action",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Identifier to the policy condition"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the policy condition"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name given to the policy condition"
                    },
                    "description":{
                        "type":"string",
                        "description":"Decription of policy condition"
                    },
                    "version":{
                        "type":"string",
                        "description":"Policy rule version"
                    },
                    "isComposite":{
                        "type":"boolean",
                        "description":"Flag to identify the condition is composite or not"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the policy rule"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the policy rule"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this policy rule"
                    }
                }
            },
            "PolicyAction":{
                "title":"PolicyAction",
                "type":"object",
                "description":"Policy action for a policy rule",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Identifier to the policy action"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the policy action"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name given to the policy action"
                    },
                    "description":{
                        "type":"string",
                        "description":"Decription of policy action"
                    },
                    "version":{
                        "type":"string",
                        "description":"Policy rule action"
                    },
                    "isComposite":{
                        "type":"boolean",
                        "description":"Flag to identify the action is composite or not"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the policy action"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the policy action"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this policy action"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    }
                }
            },
            "PolicyConstraintOracle":{
                "title":"PolicyConstraintOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PolicyConstraint"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "impactCategory":{
                                "type":"string",
                                "description":"Impact category for Constraint rule. Read only field."
                            }
                        }
                    }
                ]
            },
            "PolicyActionOracle":{
                "title":"PolicyActionOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PolicyAction"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "actionValueType":{
                                "type":"string",
                                "description":"Represent the action belongs to which entity type."
                            }
                        }
                    }
                ]
            },
            "PolicyConditionOracle":{
                "title":"PolicyConditionOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PolicyCondition"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "operator":{
                                "type":"string",
                                "description":"Represent the condtion operator"
                            },
                            "value":{
                                "oneOf":[
                                    {
                                        "type":"string"
                                    },
                                    {
                                        "type":"number"
                                    },
                                    {
                                        "type":"boolean"
                                    }
                                ],
                                "description":"Represent the condtion value"
                            },
                            "statement":{
                                "type":"string",
                                "description":"Represent the condtion matching statement"
                            }
                        }
                    }
                ]
            },
            "PolicyConditionComposite":{
                "title":"PolicyConditionComposite",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PolicyCondition"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "conditionCombinationLogic":{
                                "type":"string",
                                "enum":[
                                    "ANY_OF",
                                    "ALL_OF",
                                    "ONE_OF",
                                    "NONE"
                                ],
                                "description":"indicates if all conditions needs to be applied /handled in condition logic"
                            },
                            "policyCondition":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PolicyConditionOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "ValueRelationshipOracle":{
                "title":"ValueRelationshipOracle",
                "type":"object",
                "description":"Represent the value of a characteristic forming the constraint rule",
                "properties":{
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"Value representing a Relationship attribute"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"A length, surface, volume, dry measure, liquid measure, money, weight, time, and the like. In general, a determinate quantity or magnitude of the kind designated, taken as a standard of comparison for others of the same kind, in assigning to them numerical values, as 1 foot, 1 yard, 1 mile, 1 square foot."
                    }
                },
                "required":[
                    "value"
                ]
            },
            "CompositePopRelationshipOracle":{
                "title":"CompositePopRelationshipOracle",
                "type":"object",
                "description":"this object represents a composite relationship from a  product offering price (parent) to a simple product offering price (child).",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the associated product offering price"
                    },
                    "href":{
                        "type":"string",
                        "description":"hyperlink reference of the associated product offering price"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of  the associated product offering price"
                    },
                    "version":{
                        "type":"string",
                        "description":"version of  the associated product offering price"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"POP relationship type",
                        "enum":[
                            "COMPOSITE"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"(Class) type of the associated product offering"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"A string. The actual type of the target instance when needed for disambiguation."
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "FeatureOracle":{
                "title":"FeatureOracle",
                "type":"object",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"name of the feature"
                    },
                    "description":{
                        "type":"string",
                        "description":"description of the feature"
                    },
                    "blurb":{
                        "type":"string",
                        "description":"description of the feature"
                    },
                    "url":{
                        "type":"string",
                        "description":"Reference of the image url."
                    },
                    "rank":{
                        "description":"Numeric ranking of a marketing feature",
                        "type":"integer"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    }
                },
                "required":[
                    "name"
                ]
            },
            "ServiceSpecification":{
                "title":"ServiceSpecification",
                "type":"object",
                "description":"ServiceSpecification is a class that offers characteristics to describe a type of service. Functionally, it acts as a template by which Services may be instantiated. By sharing the same specification, these services would therefore share the same set of characteristics.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"A string. Unique identifier of the service specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the service specification."
                    },
                    "version":{
                        "type":"string",
                        "description":"A string. Service specification version."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the service specification."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the service specification is."
                    },
                    "isBundle":{
                        "type":"boolean",
                        "description":"A boolean. isBundle determines whether a ServiceSpecification represents a single ServiceSpecification (false), or a bundle of ServiceSpecification (true)."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"A string. Used to indicate the current lifecycle status of the service specification."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the Service Specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the Service Specification"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Service Specification"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the last update of the service specification."
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "resourceSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ResourceSpecificationRef"
                        }
                    },
                    "serviceLevelSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ServiceLevelSpecificationRef"
                        }
                    },
                    "serviceSpecCharacteristic":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/ServiceSpecCharacteristicOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttributeRefOracle"
                                }
                            ]
                        }
                    },
                    "serviceSpecRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ServiceSpecRelationship"
                        }
                    },
                    "targetServiceSchema":{
                        "$ref":"#/components/schemas/TargetServiceSchema"
                    },
                    "attachment":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/Attachment"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentRef"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "Attachment":"#/components/schemas/Attachment",
                                    "AttachmentOracle":"#/components/schemas/AttachmentOracle",
                                    "AttachmentRef":"#/components/schemas/AttachmentRef"
                                }
                            }
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ServiceSpecification":"#/components/schemas/ServiceSpecification",
                        "ServiceSpecificationOracle":"#/components/schemas/ServiceSpecificationOracle"
                    }
                }
            },
            "ServiceSpecificationOracle":{
                "title":"ServiceSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ServiceSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "serviceCode":{
                                "type":"string",
                                "description":"Code to service specification"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated"
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the Service Specification"
                            }
                        }
                    }
                ]
            },
            "AttachmentRef":{
                "type":"object",
                "title":"AttachmentRef",
                "description":"A list of attachment references (AttachmentRef [*]). A list of attachments (Attachment [*]). Complements the description of the specification through video, pictures...",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the attachment"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative text describing the content of the attachment"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the attachment"
                    },
                    "name":{
                        "type":"string",
                        "description":"name of the attachment"
                    },
                    "url":{
                        "type":"string",
                        "description":"Uniform Resource Locator, is a web page address (a subset of URI)"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Attachment"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the attachment"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this attachment entity"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "AttachmentRefOracle":{
                "title":"AttachmentRefOracle",
                "description":"Attachment references added to a resource",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/AttachmentRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "rank":{
                                "type":"number",
                                "description":"Attachment rank in order of their relevance for each attachmentType"
                            }
                        }
                    }
                ]
            },
            "ServiceSpecRelationship":{
                "type":"object",
                "title":"ServiceSpecRelationship",
                "description":"A list of service spec relationships (ServiceSpecRelationship [*]). A list of service specifications related to this specification, e.g. migration, substitution, dependency or exclusivity relationship.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the target serviceSpecification."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the target serviceSpecification."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. The name given to the target service specification instance."
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "role":{
                        "type":"string",
                        "description":"A string. The association role for this service specification."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the service specification relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the service specification relationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this service specification relationship entity"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "relationshipType",
                    "@type"
                ]
            },
            "ServiceLevelSpecificationRef":{
                "type":"object",
                "title":"ServiceLevelSpecificationRef",
                "description":"A list of service level specification references (ServiceLevelSpecificationRef [*]). A list of service level specifications related to this service specification, and which will need to be satisfiable for corresponding service instances; e.g. Gold, Platinum.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. The identifier to a service level specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. The hyperlink to access a service level specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. The name of Service Level Specification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the service specification relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the service specification relationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this service specification relationship entity"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"A string. The actual type of the target instance when needed for disambiguation."
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "ServiceSpecCharacteristic":{
                "title":"ServiceSpecCharacteristic",
                "type":"object",
                "description":"A list of service spec characteristics (ServiceSpecCharacteristic [*]). A list of service spec characteristics (ServiceSpecCharacteristic [*]). This class represents the key features of this service specification.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which this characteristic specification is known and distinguished from other characteristic specifications."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the serviceSpecCharacteristic is."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the characteristic can take on, such as numeric, text and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "URL"
                        ]
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates that the serviceSpecCharacteristic is configurable."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ServiceSpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this characteristic"
                    },
                    "@valueSchemaLocation":{
                        "type":"string",
                        "description":"A string. This (optional) field provides a link to the schema describing the value type."
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"An integer. The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"An integer. The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality."
                    },
                    "isUnique":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies if a value is unique for the specification. Possible values are; 'unique while value is in effect' and 'unique whether value is in effect or not'."
                    },
                    "regex":{
                        "type":"string",
                        "description":"A string. A rule or principle represented in regular expression used to derive the value of a characteristic value."
                    },
                    "extensible":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for an Entity."
                    },
                    "serviceSpecCharRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ServiceSpecCharRelationship"
                        }
                    },
                    "serviceSpecCharacteristicValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ServiceSpecCharacteristicValueOracle"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ServiceSpecCharacteristic":"#/components/schemas/ServiceSpecCharacteristic",
                        "ServiceSpecCharacteristicOracle":"#/components/schemas/ServiceSpecCharacteristicOracle"
                    }
                }
            },
            "ServiceSpecCharacteristicOracle":{
                "title":"ServiceSpecCharacteristicOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ServiceSpecCharacteristic"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "displayName":{
                                "type":"string",
                                "description":"Allows to define alternate friendly name"
                            },
                            "sensitive":{
                                "type":"boolean",
                                "description":"Indicates the sensitive information available"
                            },
                            "id":{
                                "type":"string",
                                "maxLength":30,
                                "description":"Unique identifier of the attribute"
                            },
                            "version":{
                                "type":"string",
                                "description":"attribute version"
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "lifecycleStatus":{
                                "type":"string",
                                "description":"Used to indicate the current lifecycle status"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "lastUpdate":{
                                "type":"string",
                                "format":"date-time",
                                "description":"A date time (DateTime). Date and time of the last update of the attribute"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the attribute"
                            }
                        }
                    }
                ]
            },
            "ServiceSpecCharRelationship":{
                "title":"ServiceSpecCharRelationship",
                "type":"object",
                "description":"A list of service spec char relationships (ServiceSpecCharRelationship [*]). A list of service spec char relationships (ServiceSpecCharRelationship [*]). An aggregation, migration, substitution, dependency or exclusivity relationship between/among Specification Characteristics.",
                "properties":{
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as aggregation, migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "role":{
                        "type":"string",
                        "description":"A string. The association role for this service specification."
                    },
                    "validFor":{
                        "description":"A time period. The period for which the serviceSpecCharRelationship is valid.",
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the target serviceSpecification."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the target characteristic."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the target serviceSpecification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target Service specification Characteristic Relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ServiceSpecCharacteristicRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "id",
                    "name",
                    "relationshipType",
                    "@type"
                ]
            },
            "ServiceSpecCharacteristicValue":{
                "title":"ServiceSpecCharacteristicValue",
                "type":"object",
                "description":"A list of service spec characteristic values (ServiceSpecCharacteristicValue [*]). A list of service spec characteristic values (ServiceSpecCharacteristicValue [*]). A ServiceSpecCharacteristicValue object is used to define a set of attributes, each of which can be assigned to a corresponding set of attributes in a ServiceSpecCharacteristic object. The values of the attributes in the ServiceSpecCharacteristicValue object describe the values of the attributes that a corresponding ServiceSpecCharacteristic object can take on.",
                "properties":{
                    "isDefault":{
                        "type":"boolean",
                        "description":"A boolean. Indicates if the value is the default value for a characteristic."
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"A string. A length, surface, volume, dry measure, liquid measure, money, weight, time, and the like. In general, a determinate quantity or magnitude of the kind designated, taken as a standard of comparison for others of the same kind, in assigning to them numerical values, as 1 foot, 1 yard, 1 mile, 1 square foot.",
                        "enum":[
                            "NONE",
                            "SECOND",
                            "MINUTE",
                            "HOUR",
                            "DAY",
                            "MONTH",
                            "BYTE",
                            "KILOBYTE",
                            "MEGABYTE",
                            "GIGABYTE",
                            "PAGES",
                            "MOVIES",
                            "TIME_INTERVAL",
                            "QUANTITY",
                            "MBPS",
                            "GBPS"
                        ]
                    },
                    "validFor":{
                        "description":"A time period. The period of time for which a value is applicable.",
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"An object (object). A discrete value that the characteristic can take on, or the actual value of the characteristic."
                    },
                    "valueFrom":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"integer"
                            }
                        ],
                        "description":"The low range value that a characteristic can take on."
                    },
                    "valueTo":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"integer"
                            }
                        ],
                        "description":"The upper range value that a characteristic can take on."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the characteristic can take on, such as numeric, text, and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "URL"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"A string. An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are 'open', 'closed', 'closedBottom' and 'closedTop'.",
                        "enum":[
                            "OPEN",
                            "CLOSED",
                            "CLOSED_BOTTOM",
                            "CLOSED_TOP"
                        ]
                    },
                    "regex":{
                        "type":"string",
                        "description":"A string. A regular expression constraint for given value."
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ServiceSpecCharacteristicValue"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "value",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ServiceSpecCharacteristicValue":"#/components/schemas/ServiceSpecCharacteristicValue",
                        "ServiceSpecCharacteristicValueOracle":"#/components/schemas/ServiceSpecCharacteristicValueOracle"
                    }
                }
            },
            "ServiceSpecCharacteristicValueOracle":{
                "title":"ServiceSpecCharacteristicValueOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ServiceSpecCharacteristicValue"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "sequence":{
                                "type":"integer",
                                "description":"Indicates the sequence where attribute values appear during runtime"
                            }
                        }
                    }
                ]
            },
            "TaxServiceProviderOracle":{
                "title":"TaxServiceProviderOracle",
                "type":"object",
                "description":"The tax service provider name and list of taxcodes supported.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"A string. Unique identifier of the tax service provider"
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the tax service provider."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the tax service provider."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the tax service provider is."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the tax service provider."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the tax service provider."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this tax service provider."
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the last update of the tax service provider."
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated"
                    },
                    "taxCodes":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/TaxCodeGLRelationship"
                        }
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the Tax Service Provider"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Status of the lifecycle to be exported"
                    },
                    "version":{
                        "type":"string",
                        "description":"Tax Service Provider version"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "TaxCodeGLRelationship":{
                "title":"TaxCodeGLRelationship",
                "type":"object",
                "description":"TaxCodeGLRelationship object.",
                "properties":{
                    "taxCode":{
                        "type":"string",
                        "description":"tax code value."
                    },
                    "taxPercentage":{
                        "type":"number",
                        "description":"tax percentage value."
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the tax code."
                    },
                    "glid":{
                        "type":"string",
                        "description":"glid value."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target Service specification Characteristic Relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ServiceSpecCharacteristicRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "taxCode",
                    "@type"
                ]
            },
            "UsageSpecification":{
                "title":"UsageSpecification",
                "type":"object",
                "description":"The Usage Specification resource represents a set of usage characteristics and relationships.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"A string. Unique identifier of the usage specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the usage specification."
                    },
                    "version":{
                        "type":"string",
                        "description":"A string. usage specification version."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the usage specification."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the usage specification is."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"A string. Used to indicate the current lifecycle status of the usage specification."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the Usage Specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the Usage Specification"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Usage Specification"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the last update of the Usage specification."
                    },
                    "usageSpecRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/UsageSpecRelationship"
                        }
                    },
                    "usageSpecCharacteristic":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/UsageSpecCharacteristicOracle"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "UsageSpecification":"#/components/schemas/UsageSpecification",
                        "UsageSpecificationOracle":"#/components/schemas/UsageSpecificationOracle"
                    }
                }
            },
            "UsageSpecificationOracle":{
                "title":"UsageSpecificationOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/UsageSpecification"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "usageCode":{
                                "type":"string",
                                "description":"Code to Usage specification"
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated"
                            },
                            "meteringRule":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/MeteringRuleOracle"
                                }
                            },
                            "requestSpecification":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/RequestSpecificationRefOracle"
                                }
                            },
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the Usage Specification"
                            }
                        },
                        "required":[
                            "meteringRule"
                        ]
                    }
                ]
            },
            "UsageSpecRelationship":{
                "type":"object",
                "title":"UsageSpecRelationship",
                "description":"A list of usage spec relationships (UsageSpecRelationship [*]). A list of usage specifications related to this specification.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the usage specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the usage specification"
                    },
                    "name":{
                        "type":"string",
                        "description":"name of the usage specification"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the usage specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the usage specification"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this usage specification entity"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "relationshipType",
                    "@type"
                ]
            },
            "MeteringRuleOracle":{
                "type":"object",
                "title":"MeteringRule",
                "description":"A metering rule",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the metering rule."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. The name given to the metering rule"
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. Description of the metering rule."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "roundingMethod":{
                        "type":"string",
                        "description":"Rounding applicable to the metering rule"
                    },
                    "stringExpression":{
                        "type":"string",
                        "description":"Metering Expression applicable to the metering rule"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Unit of Measure of Usage"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Metering Rule"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the Metering Rule"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Metering Rule entity"
                    },
                    "meteringExpression":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/MeteringExpressionOracle"
                        }
                    }
                },
                "required":[
                    "id",
                    "@type"
                ]
            },
            "MeteringExpressionOracle":{
                "type":"object",
                "title":"MeteringExpression",
                "description":"A metering expression",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the metering expression."
                    },
                    "operator":{
                        "type":"string",
                        "description":"Operator of the expression",
                        "enum":[
                            "NOT EQUALS",
                            "MULTIPLY",
                            "ADD",
                            "DIVIDE",
                            "NOT",
                            "EQUALS",
                            "SUBTRACT"
                        ]
                    },
                    "expressionType":{
                        "type":"string",
                        "description":"Expression Type of the expression",
                        "enum":[
                            "UNARY",
                            "BINARY",
                            "NUMERIC",
                            "CHARACTERISTIC"
                        ]
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            }
                        ],
                        "description":"A discrete value that the relationship can take on."
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Metering Expression"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the Metering Expression"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Metering Expression entity"
                    },
                    "meteringExpressionRelationship":{
                        "type":"object",
                        "items":{
                            "$ref":"#/components/schemas/MeteringExpressionRelationshipOracle"
                        }
                    }
                },
                "required":[
                    "id",
                    "expressionType",
                    "@type"
                ]
            },
            "MeteringExpressionRelationshipOracle":{
                "type":"object",
                "title":"MeteringExpressionRelationship",
                "description":"An expression relationship",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"the id reference to the parent metering expression in this relationship"
                    },
                    "name":{
                        "type":"string"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"Indicate whether this expression represents the left or right side on the binary expression from which is is contained.",
                        "enum":[
                            "LEFT_HAND_SIDE",
                            "RIGHT_HAND_SIDE"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Metering Expression Relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the Metering Expression Relationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Metering Expression Relationship entity"
                    }
                },
                "required":[
                    "relationshipType",
                    "id",
                    "@type"
                ]
            },
            "AlterationExpressionOracle":{
                "type":"object",
                "title":"AlterationExpressionOracle",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the alteration expression."
                    },
                    "operator":{
                        "type":"string",
                        "description":"Operator of the expression."
                    },
                    "expressionType":{
                        "type":"string",
                        "description":"Expression Type of the expression.",
                        "enum":[
                            "UNARY",
                            "BINARY",
                            "NUMERIC",
                            "STRING",
                            "ALTERATIONCHAR",
                            "BALANCEOFRESOURCE"
                        ]
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            }
                        ],
                        "description":"A discrete value that the relationship can take on."
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the alteration expression."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the alteration expression."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this alteration expression entity."
                    },
                    "expressionRelationship":{
                        "type":"object",
                        "items":{
                            "$ref":"#/components/schemas/ExpressionRelationshipOracle"
                        }
                    }
                },
                "required":[
                    "expressionType",
                    "id",
                    "@type"
                ]
            },
            "ExpressionRelationshipOracle":{
                "type":"object",
                "title":"ExpressionRelationshipOracle",
                "description":"An expression relationship",
                "properties":{
                    "id":{
                        "type":"string"
                    },
                    "name":{
                        "type":"string"
                    },
                    "relationshipType":{
                        "type":"string",
                        "enum":[
                            "LEFT_HAND_SIDE",
                            "RIGHT_HAND_SIDE"
                        ]
                    },
                    "@type":{
                        "type":"string"
                    },
                    "@baseType":{
                        "type":"string"
                    },
                    "@schemaLocation":{
                        "type":"string"
                    }
                },
                "required":[
                    "relationshipType",
                    "id",
                    "@type"
                ]
            },
            "RequestSpecificationRefOracle":{
                "type":"object",
                "title":"RequestSpecificationRefOracle",
                "description":"A list of request level specification references (RequestSpecificationRef [*]). A list of request level specifications related to this usage specification, and which will need to be satisfiable for corresponding usage instances.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the request Specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. The hyperlink to access a request specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. The name given to the target request specification instance."
                    },
                    "version":{
                        "type":"string",
                        "description":"A string. Version of the target request Specification."
                    },
                    "specType":{
                        "type":"string",
                        "description":"Specification Type of the request specification",
                        "enum":[
                            "INITIATE",
                            "UPDATE",
                            "TERMINATE",
                            "EVENT",
                            "OFFLINE"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the request specification Ref"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the request specification Ref"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this request specification Ref entity"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"A string. The actual type of the target instance when needed for disambiguation."
                    }
                },
                "required":[
                    "id",
                    "specType",
                    "@type",
                    "@referredType"
                ]
            },
            "UsageSpecCharacteristic":{
                "title":"UsageSpecCharacteristic",
                "type":"object",
                "description":"A list of usage spec characteristics (UsageSpecCharacteristic [*]). This class represents the key features of this usage specification.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which this characteristic specification is known and distinguished from other characteristic specifications."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the usageSpecCharacteristic is."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the characteristic can take on, such as numeric, text and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates that the usageSpecCharacteristic is configurable."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the UsageSpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this characteristic"
                    },
                    "@valueSchemaLocation":{
                        "type":"string",
                        "description":"A string. This (optional) field provides a link to the schema describing the value type."
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"An integer. The minimum number of instances a CharacteristicValue can take on."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"An integer. The maximum number of instances a CharacteristicValue can take on."
                    },
                    "isUnique":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies if a value is unique for the specification. Possible values are; 'unique while value is in effect' and 'unique whether value is in effect or not'."
                    },
                    "regex":{
                        "type":"string",
                        "description":"A string. A rule or principle represented in regular expression used to derive the value of a characteristic value."
                    },
                    "extensible":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for an Entity."
                    },
                    "usageSpecCharacteristicRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/UsageSpecCharacteristicRelationship"
                        }
                    },
                    "usageSpecCharacteristicValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/UsageSpecCharacteristicValue"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "UsageSpecCharacteristic":"#/components/schemas/UsageSpecCharacteristic",
                        "UsageSpecCharacteristicOracle":"#/components/schemas/UsageSpecCharacteristicOracle"
                    }
                }
            },
            "UsageSpecCharacteristicOracle":{
                "title":"UsageSpecCharacteristicOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/UsageSpecCharacteristic"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "isInvoiceable":{
                                "type":"boolean",
                                "description":"A boolean. If true, the Boolean indicates that the usageSpecCharacteristic is isInvoiceable."
                            },
                            "isServiceId":{
                                "type":"boolean",
                                "description":"A boolean. An indicator that specifies if a value is the serviceId"
                            },
                            "isTransient":{
                                "type":"boolean",
                                "description":"A boolean. An indicator that specifies that the values for the characteristic can be transient"
                            }
                        }
                    }
                ]
            },
            "UsageSpecCharacteristicRelationship":{
                "title":"UsageSpecCharacteristicRelationship",
                "type":"object",
                "description":"A list of usage spec char relationships. An aggregation, migration, substitution, dependency or exclusivity relationship between/among Specification Characteristics.",
                "properties":{
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as aggregation, migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "charSpecSeq":{
                        "type":"integer",
                        "description":"Characteristic sequence."
                    },
                    "validFor":{
                        "description":"A time period. The period for which the usageSpecCharRelationship is valid.",
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the target usageSpecification."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the target characteristic."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the target serviceSpecification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target Usage specification Characteristic Relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the UsageSpecCharacteristicRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "id",
                    "name",
                    "relationshipType",
                    "@type"
                ]
            },
            "UsageSpecCharacteristicValue":{
                "title":"UsageSpecCharacteristicValue",
                "type":"object",
                "description":"A list of usage spec characteristic values A UsageSpecCharacteristicValue object is used to define a set of attributes, each of which can be assigned to a corresponding set of attributes in a UsageSpecCharacteristic object. The values of the attributes in the UsageSpecCharacteristicValue object describe the values of the attributes that a corresponding UsageSpecCharacteristic object can take on.",
                "properties":{
                    "isDefault":{
                        "type":"boolean",
                        "description":"A boolean. Indicates if the value is the default value for a characteristic."
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"A string. A length, surface, volume, dry measure, liquid measure, money, weight, time, and the like. In general, a determinate quantity or magnitude of the kind designated, taken as a standard of comparison for others of the same kind, in assigning to them numerical values, as 1 foot, 1 yard, 1 mile, 1 square foot."
                    },
                    "validFor":{
                        "description":"A time period. The period of time for which a value is applicable.",
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"An object (object). A discrete value that the characteristic can take on, or the actual value of the characteristic."
                    },
                    "valueFrom":{
                        "type":"string",
                        "description":"An integer. The low range value that a characteristic can take on."
                    },
                    "valueTo":{
                        "type":"string",
                        "description":"An integer. The upper range value that a characteristic can take on."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the characteristic can take on, such as numeric, text, and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"A string. An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are 'open', 'closed', 'closedBottom' and 'closedTop'.",
                        "enum":[
                            "OPEN",
                            "CLOSED",
                            "CLOSED_BOTTOM",
                            "CLOSED_TOP"
                        ]
                    },
                    "regex":{
                        "type":"string",
                        "description":"A string. A regular expression constraint for given value."
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ServiceSpecCharacteristicValue"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "value",
                    "@type"
                ]
            },
            "CustomerProfileSpecificationOracle":{
                "title":"CustomerProfileSpecificationOracle",
                "type":"object",
                "description":"The Customer Profile Specification resource represents a set of customer profile characteristics and relationships.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"A string. Unique identifier of the customer profile specification."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the customer profile specification."
                    },
                    "version":{
                        "type":"string",
                        "description":"A string. customer profile specification version."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the customer profile specification."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the customer profile specification is."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"A string. Used to indicate the current lifecycle status of the customer profile specification."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the Customer Profile Specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the Customer Profile Specification"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Customer Profle Specification"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the last update of the Customer Profile specification."
                    },
                    "custProfSpecificationRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustProfSpecRelationshipOracle"
                        }
                    },
                    "custProfSpecCharacteristic":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustProfSpecCharacteristicOracle"
                        }
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created item"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated item"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the Customer Profile Specification"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "CustProfSpecCharacteristicOracle":{
                "title":"CustProfSpecCharacteristicOracle",
                "type":"object",
                "description":"A list of customer profile spec characteristics (CustomerProfileSpecificationCharacteristic [*]). This class represents the key features of this customer profile specification.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which this characteristic specification is known and distinguished from other characteristic specifications."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the SpecCharacteristic is."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the characteristic can take on, such as numeric, text and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates that the CustProfSpecCharacteristic is configurable."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the CustProfSpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this characteristic"
                    },
                    "@valueSchemaLocation":{
                        "type":"string",
                        "description":"A string. This (optional) field provides a link to the schema describing the value type."
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"An integer. The minimum number of instances a CharacteristicValue can take on."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"An integer. The maximum number of instances a CharacteristicValue can take on."
                    },
                    "isUnique":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies if a value is unique for the specification. Possible values are; 'unique while value is in effect' and 'unique whether value is in effect or not'."
                    },
                    "regex":{
                        "type":"string",
                        "description":"A string. A rule or principle represented in regular expression used to derive the value of a characteristic value."
                    },
                    "extensible":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for an Entity."
                    },
                    "custProfSpecCharRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustProfSpecCharRelationshipOracle"
                        }
                    },
                    "custProfSpecCharacteristicValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustProfSpecCharacteristicValueOracle"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "CustProfSpecCharRelationshipOracle":{
                "title":"CustProfSpecCharRelationshipOracle",
                "type":"object",
                "description":"A list of customer profile spec char relationships. An aggregation, migration, substitution, dependency or exclusivity relationship between/among Specification Characteristics.",
                "properties":{
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as aggregation, migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "charSpecSeq":{
                        "type":"integer",
                        "description":"Characteristic sequence."
                    },
                    "validFor":{
                        "description":"A time period. The period for which the customerProfileSpecCharRelationship is valid.",
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the target customer profile Specification."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the target characteristic."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the target customer profile."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target customer profile specification Characteristic Relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the CustomerProfileSpecCharacteristicRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "id",
                    "name",
                    "relationshipType",
                    "@type"
                ]
            },
            "CustProfSpecCharacteristicValueOracle":{
                "title":"CustProfSpecCharacteristicValueOracle",
                "type":"object",
                "description":"A list of customer profile spec characteristic values A CustomerProfileSpecificationCharacteristicValue object is used to define a set of attributes, each of which can be assigned to a corresponding set of attributes in a SpecCharacteristic object. The values of the attributes in the SpecCharacteristicValue object describe the values of the attributes that a corresponding SpecCharacteristic object can take on.",
                "properties":{
                    "isDefault":{
                        "type":"boolean",
                        "description":"A boolean. Indicates if the value is the default value for a characteristic."
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"A string. A length, surface, volume, dry measure, liquid measure, money, weight, time, and the like. In general, a determinate quantity or magnitude of the kind designated, taken as a standard of comparison for others of the same kind, in assigning to them numerical values, as 1 foot, 1 yard, 1 mile, 1 square foot."
                    },
                    "validFor":{
                        "description":"A time period. The period of time for which a value is applicable.",
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"An object (object). A discrete value that the characteristic can take on, or the actual value of the characteristic."
                    },
                    "valueFrom":{
                        "type":"string",
                        "description":"An integer. The low range value that a characteristic can take on."
                    },
                    "valueTo":{
                        "type":"string",
                        "description":"An integer. The upper range value that a characteristic can take on."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the characteristic can take on, such as numeric, text, and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"A string. An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are 'open', 'closed', 'closedBottom' and 'closedTop'.",
                        "enum":[
                            "OPEN",
                            "CLOSED",
                            "CLOSED_BOTTOM",
                            "CLOSED_TOP"
                        ]
                    },
                    "regex":{
                        "type":"string",
                        "description":"A string. A regular expression constraint for given value."
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of the characteristic value"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ServiceSpecCharacteristicValue"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"Hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "value",
                    "@type"
                ]
            },
            "CustProfSpecRelationshipOracle":{
                "type":"object",
                "title":"CustProfSpecRelationshipOracle",
                "description":"A list of usage spec relationships (CustomerProfileSpecificationRelationship [*]). A list of customer profile specifications related to this specification.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the specification"
                    },
                    "name":{
                        "type":"string",
                        "description":"name of the specification"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the specification"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this specification entity"
                    }
                },
                "required":[
                    "id",
                    "relationshipType",
                    "@type"
                ]
            },
            "PricelistOracle":{
                "title":"PricelistOracle",
                "type":"object",
                "description":"A list of offers and its coresponding prices which can be used for selling the offer in a region or a particular set of customers",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the Pricelist"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the Pricelist"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the Pricelist"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the Pricelist"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "pricelistType":{
                        "type":"string",
                        "description":"Indicates if the pricelist is a Residential, Business or other type of resource",
                        "enum":[
                            "RESIDENTIAL",
                            "BUSINESS"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "currency":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency)"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"Promotion version"
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "productOffering":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingRef"
                        }
                    },
                    "promotion":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PromotionRef"
                        }
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created item"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated item"
                    },
                    "balanceElement":{
                        "$ref":"#/components/schemas/BalanceElementRef"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the price list"
                    },
                    "businessUnitId":{
                        "type":"number",
                        "description":"Indicates Business Unit to which the offer belongs."
                    },
                    "businessUnitName":{
                        "type":"string",
                        "description":"Indicates name of Business Unit to which the offer belongs."
                    }
                },
                "required":[
                    "@type"
                ]
            },
            "PricelistOracle_Create":{
                "title":"PricelistOracle",
                "type":"object",
                "description":"A list of offers and its coresponding prices which can be used for selling the offer in a region or a particular set of customers",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the Pricelist"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the Pricelist"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the Pricelist"
                    },
                    "pricelistType":{
                        "type":"string",
                        "description":"Indicates if the pricelist is a Residential, Business or other type of resource"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of the Pricelist"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the last update"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "currency":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency)"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"Promotion version"
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "balanceElement":{
                        "$ref":"#/components/schemas/BalanceElementRef"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the promotion"
                    },
                    "businessUnitId":{
                        "type":"number",
                        "description":"Indicates Business Unit to which the offer belongs."
                    },
                    "businessUnitName":{
                        "type":"string",
                        "description":"Indicates name of Business Unit to which the offer belongs."
                    }
                }
            },
            "CustomProfileSpecificationOracle":{
                "title":"CustomProfileSpecificationOracle",
                "type":"object",
                "description":"CustomProfileSpecificationOracle",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"A string. Unique identifier of the Custom ProfileSpec."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the Custom ProfileSpec."
                    },
                    "version":{
                        "type":"string",
                        "description":"A string. Custom ProfileSpec version."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the Custom ProfileSpec."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the Custom ProfileSpec is."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"A string. Used to indicate the current lifecycle status of the custom profile specification."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the Custom ProfileSpec"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the Custom ProfileSpec"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Custom ProfileSpec"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the last update of the Custom ProfileSpec."
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "customProfileSpecChar":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/CustomProfileSpecChar"
                                },
                                {
                                    "$ref":"#/components/schemas/BusinessConfigurationCharOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/ZoneValueMapCharOracle"
                                }
                            ]
                        }
                    },
                    "customProfileSpecRel":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustomProfileSpecRel"
                        }
                    },
                    "targetProductSchema":{
                        "$ref":"#/components/schemas/TargetProductSchemaOracle"
                    },
                    "profileType":{
                        "type":"string",
                        "description":"type of the profile",
                        "enum":[
                            "DEVICE_SPEC",
                            "BUSINESS_CONFIG",
                            "TRADE_IN",
                            "CHARGING_TERM",
                            "SUSPENSION_TERM",
                            "RETURN_CHECKLIST",
                            "ENTITY_PROFILE",
                            "RENEWAL_TERM",
                            "FINANCE_PLAN",
                            "ZONE_VALUE_MAP",
                            "STANDARD_ZONE",
                            "CUSTOM_ANALYZER_RULE",
                            "POLICY_SPEC_TERM",
                            "TIME_MODEL"
                        ]
                    },
                    "profileCode":{
                        "type":"string",
                        "description":"Code of the profile"
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the Customer Profile Specification"
                    },
                    "charValueObject":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CharValueObjectRefOracle"
                        }
                    }
                },
                "required":[
                    "name",
                    "profileType",
                    "@type"
                ]
            },
            "CustomProfileSpecRel":{
                "title":"CustomProfileSpecRel",
                "type":"object",
                "description":"A migration, substitution, dependency or exclusivity relationship between/among custom profile specifications.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the custom profile Specification"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the custom profile Specification"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of relationship such as migration, substitution, dependency, exclusivity",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY",
                            "PARENT",
                            "CONDITION",
                            "EXCLUDES",
                            "REQUIRES",
                            "ALLOWED"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "relationshipType"
                ]
            },
            "CustomProfileSpecChar":{
                "title":"CustomProfileSpecChar",
                "type":"object",
                "description":"A list of custom profile spec characteristics (CustomProfileSpecChar [*]). A list of custom profile spec characteristics (CustomProfileSpecChar [*]). This class represents the key features of this custom profile specification.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which this characteristic specification is known and distinguished from other characteristic specifications."
                    },
                    "displayText":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which can be displyed for user experience."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the CustomProfileSpecChar is."
                    },
                    "attributeName":{
                        "type":"string",
                        "description":"A string. A fully qualified name of the attribute that represents the characteristic."
                    },
                    "sourceSystemName":{
                        "type":"string",
                        "description":"The name identifies the external system to which the configuration belongs"
                    },
                    "characteristicType":{
                        "type":"string",
                        "description":"Defines the type of custom profile specification characteristic",
                        "enum":[
                            "ONE_TIME",
                            "RECURRING",
                            "USAGE",
                            "FEATURE",
                            "ATTRIBUTE",
                            "RESTRICTION",
                            "GEOGRAPHY",
                            "RULE",
                            "UI_FEATURE",
                            "RESOURCE",
                            "LOOKUP"
                        ]
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the characteristic can take on, such as numeric, text and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "PRODUCT_OFFER",
                            "PRODUCT_SPEC",
                            "PRODUCT_LINE",
                            "CATEGORY"
                        ]
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates that the CustomProfileSpecChar is configurable."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the CustomProfileSpecChar"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this characteristic"
                    },
                    "@valueSchemaLocation":{
                        "type":"string",
                        "description":"A string. This (optional) field provides a link to the schema describing the value type."
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"An integer. The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality."
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"An integer. The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality."
                    },
                    "isUnique":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies if a value is unique for the specification. Possible values are; 'unique while value is in effect' and 'unique whether value is in effect or not'."
                    },
                    "active":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies if the char is active or not"
                    },
                    "regex":{
                        "type":"string",
                        "description":"A string. A rule or principle represented in regular expression used to derive the value of a characteristic value."
                    },
                    "extensible":{
                        "type":"boolean",
                        "description":"A boolean. An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for an Entity."
                    },
                    "allowedUnits":{
                        "type":"array",
                        "items":{
                            "type":"string"
                        }
                    },
                    "customProfileSpecCharRel":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustomProfileSpecCharRel"
                        }
                    },
                    "customProfileSpecCharValue":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/CustomProfileSpecCharValue"
                                },
                                {
                                    "$ref":"#/components/schemas/BusinessConfigurationCharValueOracle"
                                }
                            ]
                        }
                    },
                    "balanceElementCode":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency and user defined code for non currency."
                    },
                    "balanceElement":{
                        "$ref":"#/components/schemas/BalanceElementRef"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "CustomProfileSpecCharRel":{
                "title":"CustomProfileSpecCharRel",
                "type":"object",
                "description":"A list of custom profile spec char relationships (CustomProfileSpecCharRel [*]). A list of custom profile spec char relationships (CustomProfileSpecCharRel [*]). An aggregation, migration, substitution, dependency or exclusivity relationship between/among Specification Characteristics.",
                "properties":{
                    "relationshipType":{
                        "type":"string",
                        "description":"A string. Type of relationship such as aggregation, migration, substitution, dependency, exclusivity.",
                        "enum":[
                            "AGGREGATION",
                            "CONDITION",
                            "EXCLUDES",
                            "REQUIRES",
                            "ALLOWED",
                            "PARENT"
                        ]
                    },
                    "validFor":{
                        "description":"A time period. The period for which the custom profileSpecCharRelationship is valid.",
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the target custom profileSpecification."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the target characteristic."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the target custom profileSpecification."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target custom profile specification Characteristic Relationship"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the CustomProfileSpecCharRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "id",
                    "name",
                    "relationshipType",
                    "@type"
                ]
            },
            "BusinessConfigurationCharOracle":{
                "title":"BusinessConfigurationCharOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CustomProfileSpecChar"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "userDefined":{
                                "type":"boolean",
                                "description":"Describes if the characteristic is user defined or not."
                            },
                            "dataSource":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/DataSourceOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "ExternalConfigurationValueOracle":{
                "title":"ExternalConfigurationValueOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CustomProfileSpecCharValue"
                    }
                ]
            },
            "BusinessConfigurationCharValueOracle":{
                "title":"BusinessConfigurationCharValueOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CustomProfileSpecCharValue"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "userDefined":{
                                "type":"boolean",
                                "description":"Describes if the characteristic value is user defined or not."
                            },
                            "geographyDataSource":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/GeographyDataSourceOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "DataSourceOracle":{
                "title":"DataSourceOracle",
                "type":"object",
                "description":"Data source for the target system",
                "properties":{
                    "value":{
                        "type":"string",
                        "description":"Value or path for the target system"
                    },
                    "type":{
                        "type":"string",
                        "description":"Type of the target system"
                    },
                    "userDefined":{
                        "type":"boolean",
                        "description":"Describes if the data source is user defined or not."
                    },
                    "entity":{
                        "type":"string",
                        "description":"Describes which entity the datasource belongs to.",
                        "enum":[
                            "PRODUCT_ORDER",
                            "SHOPPING_CART"
                        ]
                    }
                }
            },
            "GeographyDataSourceOracle":{
                "title":"GeographyDataSourceOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/DataSourceOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "geographyLevel":{
                                "type":"number",
                                "description":"Level of the geography system"
                            },
                            "geographyType":{
                                "type":"string",
                                "description":"Type of the geography system"
                            }
                        }
                    }
                ]
            },
            "ImpExpJobOracle":{
                "title":"ImpExpJobs",
                "type":"object",
                "description":"The ImpExpJob represents a Migration or Publish Job",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":150
                    },
                    "href":{
                        "type":"string"
                    },
                    "contentType":{
                        "type":"string"
                    },
                    "path":{
                        "type":"string"
                    },
                    "status":{
                        "type":"string"
                    },
                    "url":{
                        "type":"string"
                    },
                    "jobType":{
                        "type":"string"
                    },
                    "parentJobId":{
                        "type":"string",
                        "maxLength":150
                    },
                    "jobProgressCode":{
                        "type":"number"
                    },
                    "itemId":{
                        "type":"string"
                    },
                    "itemName":{
                        "type":"string"
                    },
                    "itemDescription":{
                        "type":"string"
                    },
                    "itemType":{
                        "type":"string"
                    },
                    "includeRef":{
                        "type":"string"
                    },
                    "query":{
                        "type":"string"
                    },
                    "errorLog":{
                        "type":"string"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time"
                    },
                    "startDate":{
                        "type":"string",
                        "format":"date-time"
                    },
                    "completionDate":{
                        "type":"string",
                        "format":"date-time"
                    },
                    "schemaModifiedDateTime":{
                        "type":"string"
                    },
                    "nextRunJobId":{
                        "type":"string"
                    },
                    "eventName":{
                        "type":"string"
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated"
                    }
                }
            },
            "ProductRuleOracle":{
                "title":"ProductRules",
                "type":"object",
                "description":"The Product Rule resource represents a set of rules and relationships.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30
                    },
                    "href":{
                        "type":"string"
                    },
                    "version":{
                        "type":"string"
                    },
                    "ruleType":{
                        "type":"string",
                        "enum":[
                            "COMPATIBILITY",
                            "ELIGIBILITY",
                            "MIGRATION",
                            "RECOMMENDATION",
                            "CONSTRAINT"
                        ]
                    },
                    "ruleSubType":{
                        "type":"string",
                        "enum":[
                            {
                            }
                        ]
                    },
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    },
                    "lifecycleStatus":{
                        "type":"string"
                    },
                    "@type":{
                        "type":"string"
                    },
                    "@baseType":{
                        "type":"string"
                    },
                    "@schemaLocation":{
                        "type":"string"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time"
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated"
                    },
                    "ruleCondition":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RuleConditionOracle"
                        }
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "customProfileSpec":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                        }
                    },
                    "subject":{
                        "$ref":"#/components/schemas/SubjectRef"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the product rule"
                    },
                    "scope":{
                        "type":"string",
                        "enum":[
                            "ALL",
                            "BUNDLE",
                            "PACKAGE"
                        ]
                    }
                },
                "required":[
                    "name",
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                    }
                }
            },
            "RuleConditionOracle":{
                "type":"object",
                "title":"RuleConditionOracle",
                "description":"A product rule condition",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"A string. Unique identifier of the product rule."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. The name given to the product rule"
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. Description of the product rule."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "roundingMethod":{
                        "type":"string",
                        "description":"Rounding applicable to the product rule"
                    },
                    "stringExpression":{
                        "type":"string",
                        "description":"Metering Expression applicable to the product rule"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Unit of Measure of Rules"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of the Product Rule"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"The immediate base class type of the Product Rule"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this Product Rule entity"
                    },
                    "productRuleExpression":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/RuleExpressionOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/EntityRuleExpressionOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/EligibilityRuleExpressionOracle"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "RuleExpressionOracle":"#/components/schemas/RuleExpressionOracle",
                                    "EntityRuleExpressionOracle":"#/components/schemas/EntityRuleExpressionOracle",
                                    "EligibilityRuleExpressionOracle":"#/components/schemas/EligibilityRuleExpressionOracle"
                                }
                            }
                        }
                    },
                    "productRuleResult":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/RuleResultOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/RecommendationRuleResultOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/MigrationRuleResultOracle"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "RuleResultOracle":"#/components/schemas/RuleResultOracle",
                                    "RecommendationRuleResultOracle":"#/components/schemas/RecommendationRuleResultOracle",
                                    "MigrationRuleResultOracle":"#/components/schemas/MigrationRuleResultOracle"
                                }
                            }
                        }
                    }
                },
                "required":[
                    "id",
                    "@type"
                ]
            },
            "RuleExpressionOracle":{
                "type":"object",
                "title":"RuleExpressionOracle",
                "properties":{
                    "id":{
                        "type":"string"
                    },
                    "operator":{
                        "type":"string",
                        "description":"Operator of the expression"
                    },
                    "expressionType":{
                        "type":"string",
                        "description":"Expression Type of the expression",
                        "enum":[
                            "UNARY",
                            "BINARY",
                            "NUMERIC",
                            "CHARACTERISTIC",
                            "ENTITY",
                            "ELIGIBILTY_PARAM"
                        ]
                    },
                    "value":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            }
                        ],
                        "description":"A discrete value that the relationship can take on."
                    },
                    "valueFrom":{
                        "type":"integer",
                        "description":"An integer. The low range value that a rule can take on."
                    },
                    "valueTo":{
                        "type":"integer",
                        "description":"An integer. The upper range value that a rule can take on."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the rule can take on, such as numeric, text, and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "PRODUCT_OFFERING",
                            "PRODUCT_SPEC",
                            "PRODUCT_LINE"
                        ]
                    },
                    "rangeInterval":{
                        "type":"string",
                        "description":"A string. An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are 'open', 'closed', 'closedBottom' and 'closedTop'.",
                        "enum":[
                            "OPEN",
                            "CLOSED",
                            "CLOSED_BOTTOM",
                            "CLOSED_TOP"
                        ]
                    },
                    "@type":{
                        "type":"string"
                    },
                    "@baseType":{
                        "type":"string"
                    },
                    "@schemaLocation":{
                        "type":"string"
                    },
                    "productRuleExpressionRelationship":{
                        "type":"object",
                        "items":{
                            "$ref":"#/components/schemas/ProductRuleExprRelationshipOracle"
                        }
                    }
                },
                "required":[
                    "id",
                    "expressionType",
                    "@type"
                ]
            },
            "ProductRuleExprRelationshipOracle":{
                "type":"object",
                "title":"ProductRuleExpressionRelationshipOracle",
                "description":"An expression relationship",
                "properties":{
                    "id":{
                        "type":"string"
                    },
                    "name":{
                        "type":"string"
                    },
                    "relationshipType":{
                        "type":"string",
                        "enum":[
                            "LEFT_HAND_SIDE",
                            "RIGHT_HAND_SIDE"
                        ]
                    },
                    "@type":{
                        "type":"string"
                    },
                    "@baseType":{
                        "type":"string"
                    },
                    "@schemaLocation":{
                        "type":"string"
                    }
                },
                "required":[
                    "relationshipType",
                    "id",
                    "@type"
                ]
            },
            "EntityRuleExpressionOracle":{
                "title":"EntityRuleExpressionOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/RuleExpressionOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "allowedOperator":{
                                "type":"string",
                                "enum":[
                                    "REQUIRES",
                                    "REQUIRES_MUTUAL",
                                    "EXCLUDES",
                                    "COMPATIBLE"
                                ]
                            }
                        }
                    }
                ]
            },
            "EligibilityRuleExpressionOracle":{
                "title":"RuleExpressionOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/RuleExpressionOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "eligibilityParam":{
                                "type":"string",
                                "description":"type of the entity"
                            }
                        }
                    }
                ]
            },
            "RuleResultOracle":{
                "type":"object",
                "title":"RuleResultOracle",
                "properties":{
                    "id":{
                        "type":"string"
                    },
                    "value":{
                        "type":"string",
                        "description":"A discrete value that the result can take on."
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A string. A kind of value that the rule can take on, such as numeric, text, and so forth.",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "PRODUCT_OFFERING",
                            "PRODUCT_SPEC",
                            "PRODUCT_LINE"
                        ]
                    },
                    "@type":{
                        "type":"string"
                    },
                    "@baseType":{
                        "type":"string"
                    },
                    "@schemaLocation":{
                        "type":"string"
                    }
                },
                "required":[
                    "id",
                    "@type"
                ]
            },
            "RecommendationRuleResultOracle":{
                "title":"RecommendationRuleResultOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/RuleResultOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "messageType":{
                                "type":"string",
                                "enum":[
                                    "CROSS_SELL_RECOMMEND",
                                    "UPSELL_RECOMMEND"
                                ]
                            },
                            "message":{
                                "type":"string"
                            },
                            "score":{
                                "type":"integer",
                                "description":"The score within Recommendation rules must be unique and range of values supported is 0>=x<=100."
                            }
                        }
                    }
                ]
            },
            "MigrationRuleResultOracle":{
                "title":"MigrationRuleResultOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/RuleResultOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "commitmentStart":{
                                "type":"string",
                                "description":"For Original Start, Starts on the date of the original promotion. For Now, Starts today. For Original End, Starts on the end date of the original promotion.",
                                "enum":[
                                    "ORIGINAL_START",
                                    "ORIGINAL_END",
                                    "NOW"
                                ]
                            },
                            "penalty":{
                                "type":"integer",
                                "description":"The amount, in currency, to charge if the customer terminates the   promotion before the specified end date."
                            },
                            "duration":{
                                "type":"string",
                                "description":"For Original Duration, Uses the duration fields that are defined for the original promotion, that is the promotion from which it is upgraded. For New Duration, Uses the duration fields that are defined for the new promotion, that is the promotion to which it is upgraded.",
                                "enum":[
                                    "ORIGINAL_DURATION",
                                    "NEW_DURATION"
                                ]
                            },
                            "productOfferingPrice":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ProductOfferingPriceRef"
                                }
                            }
                        }
                    }
                ]
            },
            "BalanceElementOracle":{
                "title":"BalanceElementOracle",
                "type":"object",
                "description":"Balance element represenst the currency and non currency units units used in Pricing",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the Balance element"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hypertext Reference of the Balance element."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of Balance element"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of Balance element"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Latest update date of Balance element"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Status of Balance element"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource. Here can be Balance element"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "consumptionRule":{
                        "type":"string",
                        "description":"Consumption Rule of Balance Element",
                        "enum":[
                            "NONE",
                            "EST",
                            "LST",
                            "EET",
                            "LET",
                            "ESTLET",
                            "ESTEET",
                            "LSTEET",
                            "LSTLET",
                            "EETEST",
                            "LETEST",
                            "LETLST"
                        ]
                    },
                    "balanceElementType":{
                        "type":"string",
                        "description":"Type of relationship such as migration, substitution, dependency, exclusivity",
                        "enum":[
                            "COUNTER",
                            "ALLOWANCE",
                            "CURRENCY",
                            "CRYPTO",
                            "PSEUDO"
                        ]
                    },
                    "code":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency and user define code for non currency)"
                    },
                    "numericCode":{
                        "type":"number",
                        "description":"Unique numeric code (ISO 4217 numeric code for currency and auto generated value greater than 1000 for non currency)"
                    },
                    "symbol":{
                        "type":"string",
                        "description":"Symbol of the currency or pseudo currency"
                    },
                    "roundingMethod":{
                        "type":"string",
                        "description":"Default rounding applicable to the balance element"
                    },
                    "decimalPlaces":{
                        "type":"string",
                        "description":"Allowed decimal places"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"BalanceElement version"
                    },
                    "relatedParty":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/RelatedPartyRefOrPartyRoleRef"
                        }
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created item"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated item"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the balance element"
                    }
                },
                "required":[
                    "@type"
                ]
            },
            "Promotion":{
                "title":"Promotion",
                "type":"object",
                "description":"Promotion Resource is used to provide the additional discount, voucher, bonus or gift to the customer who meets the pre-defined criteria. Using promotion, the enterprise is able to attract the users and encourage more consumption, especially continuous purchases. Normally Promotion is not regarded as one type of product or product offering. It is often applied when the customer buys the product offerings with the price or amount surpassing the certain limit.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the Promotion"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hypertext Reference of the Promotion."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of Promotion"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of Promotion"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Latest update date of Promotion"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Status of Promotion"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource. Here can be promotion"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "promotionType":{
                        "type":"string",
                        "description":"Comma seperated promotion tags/type",
                        "enum":[
                            "AWARD",
                            "DISCOUNT",
                            "TRADE_IN",
                            "CROSS_PRODUCT_DISCOUNT"
                        ]
                    },
                    "attachment":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/Attachment"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/AttachmentRef"
                                }
                            ],
                            "discriminator":{
                                "propertyName":"@type",
                                "mapping":{
                                    "Attachment":"#/components/schemas/Attachment",
                                    "AttachmentOracle":"#/components/schemas/AttachmentOracle",
                                    "AttachmentRef":"#/components/schemas/AttachmentRef"
                                }
                            }
                        }
                    },
                    "pattern":{
                        "type":"array",
                        "items":{
                            "anyOf":[
                                {
                                    "$ref":"#/components/schemas/PromotionPatternOracle"
                                },
                                {
                                    "$ref":"#/components/schemas/PromotionTreePatternOracle"
                                }
                            ]
                        }
                    }
                },
                "required":[
                    "@type"
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "Promotion":"#/components/schemas/Promotion",
                        "PromotionOracle":"#/components/schemas/PromotionOracle"
                    }
                }
            },
            "PromotionOracle":{
                "title":"PromotionOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/Promotion"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "project":{
                                "$ref":"#/components/schemas/ProjectRef"
                            },
                            "version":{
                                "type":"string",
                                "description":"Promotion version"
                            },
                            "priceList":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PriceListRefOracle"
                                }
                            },
                            "category":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CategoryRef"
                                }
                            },
                            "agreement":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/AgreementRef"
                                }
                            },
                            "created":{
                                "type":"string",
                                "format":"date-time",
                                "description":"Date and time of the creation"
                            },
                            "createdBy":{
                                "type":"string",
                                "description":"name of the person who created item"
                            },
                            "lastUpdatedBy":{
                                "type":"string",
                                "description":"name of the person who updated item"
                            },
                            "customProfileSpec":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            },
                            "customProfSpecCharValueUse":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfSpecCharValueUse"
                                }
                            },
                            "externalId":{
                                "type":"string",
                                "description":"id of the external application"
                            },
                            "applicationName":{
                                "type":"string",
                                "description":"name of the external application"
                            },
                            "versionState":{
                                "type":"number",
                                "description":"Version state of the promotion"
                            },
                            "active":{
                                "type":"boolean",
                                "description":"Describes if cross product discount or promotion is active."
                            }
                        }
                    }
                ]
            },
            "PromotionPattern":{
                "title":"PromotionPattern",
                "type":"object",
                "description":"Detailed pattern of the promotion. The pattern decides the conditions of promotion and the benefit of the promotion to be given to the eligible customer.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of Promotion Pattern"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of Promotion Pattern"
                    },
                    "priority":{
                        "type":"integer",
                        "description":"Piority of this Promotion Pattern"
                    },
                    "criteriaGroupLogicalRelationship":{
                        "type":"string",
                        "description":"The logical relation type amongst the promotion criteria group.AND logical relation,OR logical relation",
                        "enum":[
                            "AND",
                            "OR"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "criteriaGroup":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PromotionCriteriaGroupOracle"
                        }
                    },
                    "action":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PromotionActionOracle"
                        }
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    }
                },
                "required":[
                    "criteriaGroup",
                    "action",
                    "@type"
                ]
            },
            "PromotionPatternOracle":{
                "title":"PromotionPatternOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PromotionPattern"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "active":{
                                "type":"boolean",
                                "description":"Describes if the pattern is active for cross product discounts and promotions."
                            }
                        }
                    }
                ]
            },
            "PromotionTreePatternOracle":{
                "title":"PromotionPatternTreeOracle",
                "description":"Detailed pattern of the promotion.",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PromotionPatternOracle"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "isRoot":{
                                "type":"boolean",
                                "description":"Describes if the promotion is the starting point of the chained promotions."
                            },
                            "patternRelationship":{
                                "description":"Relation regarding the chained information of the promotions.",
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/PatternRelationshipOracle"
                                }
                            }
                        },
                        "required":[
                            "patternRelationship"
                        ]
                    }
                ]
            },
            "PatternRelationshipOracle":{
                "title":"PatternRelationshipOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the Pattern Relationship"
                    },
                    "name":{
                        "type":"string"
                    },
                    "@baseType":{
                        "type":"string"
                    },
                    "@type":{
                        "type":"string"
                    },
                    "@schemaLocation":{
                        "type":"string"
                    },
                    "relationshipType":{
                        "type":"string",
                        "description":"The state that describes if the pattern next in line under used or non used state.",
                        "enum":[
                            "TRUE_STATE",
                            "FALSE_STATE"
                        ]
                    }
                },
                "required":[
                    "relationshipType",
                    "@type"
                ]
            },
            "PromotionCriteriaGroup":{
                "title":"PromotionCriteriaGroup",
                "type":"object",
                "description":"The group of the criteria of the promotion.The logical relationship between different groups is decided by the ???relationTypeInGroup???.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the PromotionCriteriaGroup"
                    },
                    "groupName":{
                        "type":"string",
                        "description":"Name of the PromotionCriteriaGroup"
                    },
                    "criteriaLogicalRelationship":{
                        "type":"string",
                        "description":"The logical relation type amongst the PromotionCriteria criteria group.AND logical relation,OR logical relation",
                        "enum":[
                            "AND",
                            "OR"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "criteria":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PromotionCriteriaOracle"
                        }
                    }
                },
                "required":[
                    "criteria",
                    "@type"
                ]
            },
            "PromotionCriteria":{
                "title":"PromotionCriteria",
                "type":"object",
                "description":"Criteria of the promotion.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the PromotionCriteria"
                    },
                    "criteriaParameter":{
                        "type":"string",
                        "description":"The parameter (factor) of the criteria.  "
                    },
                    "criteriaValue":{
                        "oneOf":[
                            {
                                "type":"string"
                            },
                            {
                                "type":"object"
                            },
                            {
                                "type":"number"
                            },
                            {
                                "type":"boolean"
                            },
                            {
                                "type":"array"
                            }
                        ],
                        "description":"The value is filled for the comparison of the criteria."
                    },
                    "criteriaOperator":{
                        "type":"string",
                        "description":"The logic expression including parameter and operator.",
                        "enum":[
                            "EQUALS",
                            "GREATER_THAN",
                            "LESS_THAN",
                            "GREATER_THAN_OR_EQUALS",
                            "LESS_THAN_OR_EQUALS",
                            "NOT_EQUALS",
                            "IN_BETWEEN",
                            "IN"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    }
                },
                "required":[
                    "criteriaOperator",
                    "criteriaParameter",
                    "criteriaValue",
                    "@type"
                ]
            },
            "PromotionCriteriaOracle":{
                "title":"PromotionCriteriaOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PromotionCriteria"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "description":{
                                "type":"string",
                                "description":"A narrative text describing the criteria object"
                            },
                            "valueFrom":{
                                "type":"string",
                                "description":"The low range value that a rule can take on"
                            },
                            "valueTo":{
                                "type":"string",
                                "description":"The upper range value that a rule can take on"
                            },
                            "valueType":{
                                "type":"string",
                                "description":"Expression Type of the criteria value",
                                "enum":[
                                    "STRING",
                                    "NUMBER",
                                    "OBJECT",
                                    "ARRAY",
                                    "DECIMAL",
                                    "BOOLEAN",
                                    "DATE",
                                    "DATETIME",
                                    "PRODUCT_OFFER",
                                    "PRODUCT_LINE",
                                    "CATEGORY",
                                    "PRODUCT_SPEC"
                                ]
                            },
                            "regex":{
                                "type":"string",
                                "description":"Regular expression to define constraint on the allowed value"
                            },
                            "unitOfMeasure":{
                                "type":"string",
                                "description":"Could be minutes, GB...",
                                "enum":[
                                    "NONE",
                                    "SECOND",
                                    "MINUTE",
                                    "HOUR",
                                    "DAY",
                                    "MONTH",
                                    "BYTE",
                                    "KILOBYTE",
                                    "MEGABYTE",
                                    "GIGABYTE",
                                    "PAGES",
                                    "MOVIES",
                                    "TIME_INTERVAL",
                                    "QUANTITY",
                                    "MBPS",
                                    "GBPS"
                                ]
                            },
                            "isDefault":{
                                "type":"boolean",
                                "description":"Indicates if the value is the default value for a characteristic"
                            },
                            "rangeInterval":{
                                "type":"string",
                                "description":"An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are ''open'', ''closed'', ''closedBottom'' and ''closedTop'",
                                "enum":[
                                    "OPEN",
                                    "CLOSED",
                                    "CLOSED_BUTTON",
                                    "CLOSED_TOP"
                                ]
                            }
                        }
                    }
                ]
            },
            "PromotionCriteriaGroupOracle":{
                "title":"PromotionCriteriaGroupOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PromotionCriteriaGroup"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "criteriaProfileSpec":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "PromotionAction":{
                "title":"PromotionAction",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the PromotionAction"
                    },
                    "actionType":{
                        "type":"array",
                        "items":{
                            "type":"string",
                            "description":"actionType ",
                            "enum":[
                                "VOUCHER",
                                "GIFT",
                                "ALLOWANCE",
                                "DISCOUNT",
                                "DONATION",
                                "OVERRIDE",
                                "PERCENT_MARKUP",
                                "FIXED_MARKUP"
                            ]
                        },
                        "description":"actionType "
                    },
                    "actionValue":{
                        "type":"string",
                        "description":"actionValue  "
                    },
                    "actionObjectId":{
                        "type":"string",
                        "description":"actionObjectId "
                    },
                    "actionEntityRef":{
                        "$ref":"#/components/schemas/EntityRef"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    }
                },
                "required":[
                    "actionValue",
                    "actionType",
                    "@type"
                ]
            },
            "PromotionActionOracle":{
                "title":"PromotionActionOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/PromotionAction"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "actionValueObj":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ActionObjectRefOracle"
                                }
                            },
                            "eligibility":{
                                "type":"array",
                                "items":{
                                    "$ref":"#/components/schemas/ActionObjectRefOracle"
                                }
                            }
                        }
                    }
                ]
            },
            "ActionObjectRefOracle":{
                "type":"object",
                "title":"ActionObjectRefOracle",
                "description":"ActionObjectRefOracle",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identified of the ActionObject"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink of the Action Object"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the ActionObject"
                    },
                    "actionObjectType":{
                        "type":"string",
                        "description":"Type of the Action Object",
                        "enum":[
                            "PRODUCT_OFFERING",
                            "PRODUCT_OFFERING_PRICE",
                            "PRODUCTLINE",
                            "CATEGORY",
                            "PRODUCT_SPECIFICATION"
                        ]
                    },
                    "appliesTo":{
                        "type":"string",
                        "description":"Price Type of benefit",
                        "enum":[
                            "ALL",
                            "ONE_TIME",
                            "RECURRING",
                            "USAGE"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "maxQuantity":{
                        "type":"integer",
                        "description":"A maximum quantity of items required to be eligible for benefit"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"Type of the referred entity"
                    }
                },
                "required":[
                    "id",
                    "@type"
                ]
            },
            "PromotionEligibilityOracle":{
                "title":"PromotionEligibilityOracle",
                "type":"object",
                "description":"specifies the promotion eligibility rule for the offer",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"Name of the eligibility rule"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative text describing the eligibility rule"
                    },
                    "active":{
                        "type":"boolean",
                        "description":"A flag indicating if the rule is active or not"
                    },
                    "conditionPara":{
                        "type":"string",
                        "description":"The parameter (factor) of the criteria.  "
                    },
                    "conditionValue":{
                        "type":"string",
                        "description":"The value is filled for the comparison of the criteria."
                    },
                    "promotionType":{
                        "type":"string",
                        "description":"The type of promotion allowed."
                    },
                    "customProfileSpec":{
                        "$ref":"#/components/schemas/CustomProfileSpecRefOracle"
                    },
                    "conditionOperator":{
                        "type":"string",
                        "description":"The logic expression including parameter and operator.",
                        "enum":[
                            "EQUALS",
                            "GREATER_THAN",
                            "LESS_THAN",
                            "GREATER_THAN_OR_EQUALS",
                            "LESS_THAN_OR_EQUALS",
                            "NOT_EQUALS"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    }
                },
                "required":[
                    "name"
                ]
            },
            "PlaceOracle":{
                "title":"PlaceOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the place."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of place."
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of place."
                    },
                    "href":{
                        "type":"string",
                        "description":"Hypertext Reference of the place."
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Latest update date of place."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Lifecycle status of place."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"Place version"
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the place creation."
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created the place."
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated the place."
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the place."
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "MarketSegmentOracle":{
                "title":"MarketSegmentOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the market segment."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of market segment."
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of market segment."
                    },
                    "href":{
                        "type":"string",
                        "description":"Hypertext Reference of the market segment."
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Latest update date of market segment."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Lifecycle status of market segment."
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"Market segment version"
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the market segment creation."
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created the market segment."
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated the market segment."
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the market segment."
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "PriceTagOracle":{
                "title":"PriceTagOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the priceTag."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of priceTag."
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of priceTag."
                    },
                    "href":{
                        "type":"string",
                        "description":"Hypertext Reference of the priceTag."
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Latest update date of priceTag."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Status of priceTag"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"PriceTag version"
                    },
                    "priceTagRules":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PriceTagRuleOracle"
                        }
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the priceTag creation."
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created the priceTag."
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated the priceTag."
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the priceTag."
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "PriceTagRuleOracle":{
                "title":"PriceTagRuleOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the priceTag."
                    },
                    "balanceElement":{
                        "$ref":"#/components/schemas/BalanceElementRef"
                    },
                    "productType":{
                        "type":"string",
                        "description":"Type of offer to which the priceTag rule applies to.",
                        "enum":[
                            "ALL",
                            "ACCOUNT",
                            "SERVICE"
                        ]
                    },
                    "valueType":{
                        "type":"string",
                        "description":"Type of value.",
                        "enum":[
                            "ALL",
                            "LIST",
                            "RANGE"
                        ]
                    },
                    "value":{
                        "type":"string",
                        "description":"Value corresponding to the selected valueType in semicolon selected format."
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"The unit of measure for which the priceTag rule applies to."
                    },
                    "balanceElementCode":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency and user defined code for non currency"
                    },
                    "serviceSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ServiceSpecificationRefOracle"
                        }
                    }
                },
                "required":[
                    "id"
                ]
            },
            "RolloverRuleOracle":{
                "title":"RolloverRuleOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the rollover."
                    },
                    "balanceElementCode":{
                        "type":"string",
                        "description":"Currency (ISO4217 norm uses 3 letters to define the currency and user defined code for non currency"
                    },
                    "maxRolloverAmountPerCycle":{
                        "type":"number",
                        "description":"Maximum amount that can be rolled over in a cycle."
                    },
                    "maxCumulativeRolloverAmount":{
                        "type":"number",
                        "description":"Maximum rollover amount that can be accumulated."
                    },
                    "maximumRolloverCycles":{
                        "title":"MaximumRolloverCycleOracle",
                        "type":"object",
                        "description":"Indicates the maximum allowed rollover cycles and the unit.",
                        "properties":{
                            "value":{
                                "type":"number",
                                "description":"Indicates the number of rollover cycles."
                            },
                            "unit":{
                                "type":"string",
                                "description":"Indicates the unit of rollover cycle.",
                                "enum":[
                                    "DAYS",
                                    "WEEKS",
                                    "MONTHS",
                                    "YEARS"
                                ]
                            }
                        },
                        "required":[
                            "value",
                            "unit"
                        ]
                    },
                    "glid":{
                        "type":"string",
                        "description":"GLID for the rollover charge."
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"The unit of measure for which the priceTag rule applies to."
                    },
                    "balanceElement":{
                        "$ref":"#/components/schemas/BalanceElementRef"
                    }
                },
                "required":[
                    "id",
                    "balanceElementCode"
                ]
            },
            "PriceTagRefOracle":{
                "title":"PriceTagRefOracle",
                "type":"object",
                "description":"PriceTag reference.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of a related entity."
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the related entity."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the related entity."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"When sub-classing, this defines the super-class"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "format":"uri",
                        "description":"A URI to a JSON-Schema file that defines additional attributes and relationships"
                    },
                    "@type":{
                        "type":"string",
                        "description":"When sub-classing, this defines the sub-class entity name"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"The actual type of the target instance when needed for disambiguation."
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state of reference"
                    }
                },
                "required":[
                    "id",
                    "@type",
                    "@referredType"
                ]
            },
            "EntitlementOracle":{
                "title":"EntitlementOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the entitlement"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hypertext Reference of the entitlement."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of entitlement"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of entitlement"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Latest update date of entitlement"
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Status of entitlement"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource. Here can be entitlement"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"Promotion version"
                    },
                    "entitlementType":{
                        "type":"string",
                        "description":"entitlememt type",
                        "enum":[
                            "ENTITLEMENT_PRICING",
                            "ENTITLEMENT_SERVICE"
                        ]
                    },
                    "pricelist":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PriceListRefOracle"
                        }
                    },
                    "metrics":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/EntitlementMetricsOracle"
                        }
                    },
                    "quantity":{
                        "$ref":"#/components/schemas/EntitlementQuantityOracle"
                    },
                    "priority":{
                        "type":"number",
                        "description":"Priority of this entitlement in relation to other entitlement assosiatedto the project."
                    },
                    "associatedProducts":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/AssociatedProductsEntitlementsOracle"
                        }
                    },
                    "benefits":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/EntitlementsBenefitsOracle"
                        }
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created item"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated item"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the entitlement"
                    }
                },
                "required":[
                    "associatedProducts"
                ]
            },
            "EntitlementMetricsOracle":{
                "title":"EntitlementMetricsOracle",
                "type":"object",
                "description":"Entitlement Metrics",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the entitlement metrics"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of Entitlement Metrics"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of Entitlement Metrics"
                    },
                    "priority":{
                        "type":"number",
                        "description":"Piority of this Metrics"
                    },
                    "metricsType":{
                        "type":"string",
                        "description":"description",
                        "enum":[
                            "ENTL_MET_RESP_TIME",
                            "ENTL_MET_SERV_AVAIL",
                            "ENTL_MET_RESL_TIME",
                            "ENTL_MET_ESCL_TIME"
                        ]
                    },
                    "metricsQuantity":{
                        "$ref":"#/components/schemas/EntitlementMetricsQuantityOracle",
                        "description":"name of the person who updated item"
                    }
                }
            },
            "AssociatedProductsEntitlementsOracle":{
                "type":"object",
                "title":"AssociatedProductsEntitlementsOracle",
                "description":"The products which are assosiated to entitlement, benefit or conditions",
                "properties":{
                    "id":{
                        "type":"string"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the assosiated product"
                    },
                    "actionObjectType":{
                        "type":"string",
                        "description":"Type of the assosiated product",
                        "enum":[
                            "PRODUCT_OFFERING",
                            "PRODUCT_OFFERING_PRICE",
                            "PRODUCTLINE",
                            "CATEGORY",
                            "PRODUCT_SPECIFICATION"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"Type of the referred entity"
                    }
                },
                "required":[
                    "id"
                ]
            },
            "EntitlementsBenefitsOracle":{
                "title":"EntitlementsBenefitsOracle",
                "type":"object",
                "description":"Entitlement benefits.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the benifit"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of entitlement benifit"
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of entitlements benefit"
                    },
                    "products":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/AssociatedProductsEntitlementsOracle"
                        }
                    },
                    "priority":{
                        "type":"number",
                        "description":"Piority of this benifit"
                    },
                    "benefitType":{
                        "type":"string",
                        "description":"Benifit type",
                        "enum":[
                            "ENTL_BFT_TYP_DSNT"
                        ]
                    },
                    "productOfferingPrice":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingPriceRefOracle"
                        }
                    },
                    "schedule":{
                        "type":"string",
                        "description":"Allows to define the benifit schedule",
                        "enum":[
                            "ENTL_BFT_SCDL_MNTLY",
                            "ENTL_BFT_SCDL_ANLY",
                            "ENTL_BFT_SCDL_ASINRD",
                            "ENTL_BFT_SCDL_BIANLY",
                            "ENTL_BFT_SCDL_CTRTRM",
                            "ENTL_BFT_SCDL_CTRYR",
                            "ENTL_BFT_SCDL_QRTLY",
                            "ENTL_BFT_SCDL_WEKLY"
                        ]
                    },
                    "status":{
                        "type":"string",
                        "description":"Signifies the current status of the benefit",
                        "enum":[
                            "ENTL_BFT_STS_ACTV",
                            "ENTL_BFT_STS_CNCLD",
                            "ENTL_BFT_STS_EXHSTD",
                            "ENTL_BFT_STS_NEW",
                            "ENTL_BFT_STS_ONHOLD"
                        ]
                    },
                    "relationShipAmongGroup":{
                        "type":"string",
                        "description":"Condition relationship for the benfit",
                        "enum":[
                            "ENTL_BFT_CND_REL_ALL",
                            "ENTL_BFT_CND_REL_ANY"
                        ]
                    },
                    "entitlementConditionsGroup":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/EntitlementConditionsGroupOracle"
                        }
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    }
                },
                "required":[
                    "products",
                    "productOfferingPrice"
                ]
            },
            "ProductOfferingPriceRefOracle":{
                "title":"ProductOfferingPriceRefOracle",
                "description":"ProductPriceOffering reference. An amount, usually of money, that is asked for or allowed when a ProductOffering is bought, rented, or leased",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceRef"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "appliesTo":{
                                "type":"string",
                                "description":"Bring in a open ended definition of alteration that specifies how price plan applicable to the offer",
                                "enum":[
                                    "ALL",
                                    "ONE_TIME",
                                    "RECURRING",
                                    "USAGE"
                                ]
                            },
                            "isBundlePrice":{
                                "type":"boolean",
                                "description":"Used to indicate whether the referred price is the flat price for a bundle (true) or not(false)."
                            }
                        }
                    }
                ]
            },
            "EntitlementConditionsGroupOracle":{
                "title":"EntitlementConditionsGroupOracle",
                "type":"object",
                "description":"The group of the condition for the entitlement.The logical relationship between different groups is decided by the ???relationTypeInGroup???.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the entitlement condition group"
                    },
                    "groupName":{
                        "type":"string",
                        "description":"Name of the entitlement condition group"
                    },
                    "relationTypeInGroup ":{
                        "type":"string",
                        "description":"The logical relation type amongst the entitlement condition group.AND logical relation,OR logical relation",
                        "enum":[
                            "AND",
                            "OR"
                        ]
                    },
                    "order":{
                        "type":"number",
                        "description":"Seqeunce number for this condition"
                    },
                    "status":{
                        "type":"string",
                        "description":"status",
                        "enum":[
                            "ENT_CND_STA_ACTV",
                            "ENT_CND_STA_CNCLD",
                            "ENT_CND_STA_EXHSTD",
                            "ENT_CND_STA_NEW",
                            "ENT_CND_STA_ONHLD"
                        ]
                    },
                    "conditionTiming":{
                        "type":"string",
                        "description":"Signifies the condition timing , weather its Annually , weekly etc.",
                        "enum":[
                            "ENT_CND_TMG_ANLY",
                            "ENT_CND_TMG_BIANLY",
                            "ENT_CND_TMG_CTRTRM",
                            "ENT_CND_TMG_CTRYR",
                            "ENT_CND_TMG_MTLY",
                            "ENT_CND_TMG_QRTLY",
                            "ENT_CND_TMG_WEKLY"
                        ]
                    },
                    "products":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/AssociatedProductsEntitlementsOracle"
                        }
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "condition":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/EntitlementConditionOracle"
                        }
                    }
                },
                "required":[
                    "products"
                ]
            },
            "EntitlementConditionOracle":{
                "title":"EntitlementConditionOracle",
                "type":"object",
                "description":"Condition of the entitlement.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the entitlement condition"
                    },
                    "conditionType":{
                        "type":"string",
                        "description":"condition type, shows the conditons being created, defaulted to volume",
                        "enum":[
                            "ENTL_COND_TYP_VOL"
                        ]
                    },
                    "conditionValue":{
                        "type":"string",
                        "description":"Condition value"
                    },
                    "unitOfMeasure":{
                        "type":"string",
                        "description":"Unit of measure to satisfy the condition",
                        "enum":[
                            "ENT_CND_UOM_ORDRS"
                        ]
                    },
                    "operator":{
                        "type":"string",
                        "description":"The logic expression including parameter and operator.",
                        "enum":[
                            "EQUALS",
                            "GREATER_THAN",
                            "LESS_THAN",
                            "GREATER_THAN_OR_EQUALS",
                            "LESS_THAN_OR_EQUALS",
                            "NOT_EQUALS"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the object"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    }
                }
            },
            "LifecycleStateOracle":{
                "title":"LifecycleStateOracle",
                "type":"object",
                "description":"A list of Lifecycle state user will define for a given lifecycleConfig (LifecycleState [*]). This class represents the key features of this lifecycle state.",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which this lifecycle state is known and distinguished from other lifecycle states."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the LifecycleState is."
                    },
                    "isEditable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates that the project is editable in this state or not."
                    },
                    "isContentEditable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates that the entity in the project is editable or not."
                    },
                    "isApprovalRequired":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates whether this state needs approval to move tro next state."
                    },
                    "isPublishable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates whether publish is allowed in this state."
                    },
                    "isSensitive":{
                        "type":"boolean",
                        "description":"A boolean. If true, the the Boolean indicates whether publishing this state is sensitive or not."
                    },
                    "isSharable":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates whether the entity can be shared with other projects in this state."
                    },
                    "isEnabled":{
                        "type":"boolean",
                        "description":"A boolean. If true, the Boolean indicates whether the state is enabled or not ."
                    },
                    "stateOrder":{
                        "type":"integer",
                        "description":"The sequence number of the state that shows the transition"
                    },
                    "errorState":{
                        "type":"string",
                        "description":"A string. Indicates the state it will end  up during transition if error happens for automatic transition like approval or publish"
                    },
                    "userAction":{
                        "type":"string",
                        "description":"A string. The name of the action for user triggered  state transition"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the CustProfSpecCharacteristic"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this characteristic"
                    },
                    "destination":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/DestinationRefOracle"
                        }
                    }
                },
                "required":[
                    "name",
                    "stateOrder",
                    "@type"
                ]
            },
            "DestinationRefOracle":{
                "title":"DestinationRefOracle",
                "type":"object",
                "description":"A list of destinations references associated with lifecycle state.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the publish destination."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the target destination."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the target destination."
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of associated destination."
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target destination References"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the DestinationRefOracle"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "id",
                    "name"
                ]
            },
            "LifecycleConfigurationOracle":{
                "title":"LifecycleConfigurationOracle",
                "type":"object",
                "description":"The Lifecycle Config resource represents a set of lifecycle configurations and lifecycle states.",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Unique identifier of the lifecycle configurations."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the lifecycle configuration."
                    },
                    "version":{
                        "type":"string",
                        "description":"A string. lifecycle configuration version."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the lifecycle configuration."
                    },
                    "description":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the lifecycle configuration is."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"A string. Used to indicate the current lifecycle status of the lifecycle configuration.",
                        "enum":[
                            "ACTIVE",
                            "PENDING",
                            "INACTIVE"
                        ]
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of the lifecycle configuration"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the lifecycle configurationn"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this lifecycle configuration"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the last update of the lifecycle configuration."
                    },
                    "lifecycleState":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/LifecycleStateOracle"
                        }
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created item"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated item"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the Life cycle configuration"
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "LifecycleConfigurationRef":{
                "title":"LifecycleConfigurationRef",
                "type":"object",
                "description":"LifecycleConfiguration Reference",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Unique identifier of the lifecycle configurations."
                    },
                    "href":{
                        "type":"string",
                        "description":"A string. Reference of the lifecycle configuration."
                    },
                    "version":{
                        "type":"string",
                        "description":"A string. lifecycle configuration version."
                    },
                    "name":{
                        "type":"string",
                        "description":"A string. Name of the lifecycle configuration."
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"Class type of the lifecycle configuration"
                    }
                },
                "required":[
                    "@referredType"
                ]
            },
            "ApprovalHistory":{
                "title":"ApprovalHistory",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Unique identifier of the approval history."
                    },
                    "approvalAction":{
                        "type":"string",
                        "description":"A string. approval action."
                    },
                    "approvalFor":{
                        "type":"string",
                        "description":"A string. approval for."
                    },
                    "requestor":{
                        "type":"string",
                        "description":"A string. requestor."
                    },
                    "approver":{
                        "type":"string",
                        "description":"A string. approver."
                    },
                    "comments":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the approval history is."
                    },
                    "approvalDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the approval."
                    },
                    "projectId":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Unique identifier of the project id."
                    },
                    "projectName":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Project Name."
                    },
                    "entityName":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Entity name."
                    }
                },
                "required":[
                    "id"
                ]
            },
            "ApprovalInfoOracle":{
                "title":"ApprovalInfoOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Unique identifier of the approval info."
                    },
                    "approvalFor":{
                        "type":"string",
                        "description":"A string. approval for."
                    },
                    "requestor":{
                        "type":"string",
                        "description":"A string. requestor."
                    },
                    "comments":{
                        "type":"string",
                        "description":"A string. A narrative that explains in detail what the approval history is."
                    },
                    "requestedOn":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the approval."
                    },
                    "entityName":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Entity name."
                    }
                },
                "required":[
                    "requestor"
                ]
            },
            "ProjectHistory":{
                "title":"ProjectHistory",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Unique identifier of the project history."
                    },
                    "action":{
                        "type":"string",
                        "description":"A string. action."
                    },
                    "stateFrom":{
                        "type":"string",
                        "description":"A string. State From."
                    },
                    "stateTo":{
                        "type":"string",
                        "description":"A string. State To."
                    },
                    "entityName":{
                        "type":"string",
                        "maxLength":100,
                        "description":"A string. Entity Name."
                    }
                },
                "required":[
                    "id"
                ]
            },
            "CatalogImportOracle":{
                "title":"CatalogImportOracle",
                "type":"object",
                "description":"List of all catalog business objects in import",
                "properties":{
                    "catalog":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CatalogOracle"
                        }
                    },
                    "category":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CategoryOracle"
                        }
                    },
                    "productSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecificationOracle"
                        }
                    },
                    "productLine":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductLineOracle"
                        }
                    },
                    "productOffering":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingOracle"
                        }
                    },
                    "productOfferingPrice":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                        }
                    },
                    "pricingLogicAlgorithm":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                        }
                    },
                    "pricingLogicAlgorithmSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                        }
                    },
                    "pricelist":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PricelistOracle"
                        }
                    },
                    "promotion":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/PromotionOracle"
                        }
                    },
                    "customerProfileSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                        }
                    },
                    "usageSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/UsageSpecificationOracle"
                        }
                    },
                    "serviceSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ServiceSpecificationOracle"
                        }
                    },
                    "customProfileSpecification":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                        }
                    },
                    "taxServiceProvider":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/TaxServiceProviderOracle"
                        }
                    },
                    "balanceElement":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/BalanceElementOracle"
                        }
                    },
                    "productRule":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/ProductRuleOracle"
                        }
                    },
                    "entitlement":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/EntitlementOracle"
                        }
                    },
                    "project":{
                        "type":"object",
                        "items":{
                            "$ref":"#/components/schemas/ProjectOracle"
                        }
                    }
                }
            },
            "BulkError":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/BulkErrorObj"
                }
            },
            "BulkErrorObj":{
                "title":"BulkErrorObj",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the resource"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the resource"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the resource"
                    },
                    "errorMessage":{
                        "type":"string",
                        "description":"Text that provide more details and corrective actions related to the error."
                    },
                    "@type":{
                        "type":"string",
                        "description":"The class type of a REST resource."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"it provides a link to the schema describing a REST resource."
                    }
                }
            },
            "ProductSpecifications":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ProductSpecificationOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "ProductOfferings":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ProductOfferingOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "ProductOfferingPrices":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "ProductLines":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ProductLineOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "Catalogs":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/CatalogOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "Categories":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/CategoryOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "PLAs":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/PlaQuantityRangeOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "PricingLogicAlgorithmSpecifications":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/PricingLogicAlgorithmSpecification"
                },
                "minItems":1,
                "maxItems":50
            },
            "BalanceElements":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/BalanceElementOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "PriceLists":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/PricelistOracle_Create"
                },
                "minItems":1,
                "maxItems":50
            },
            "CustomerProfileSpecifications":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/CustomerProfileSpecificationOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "CustomProfileSpecifications":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/CustomProfileSpecificationOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "Promotions":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/PromotionOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "Entitlements":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/EntitlementOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "PriceTags":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/PriceTagOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "UsageSpecifications":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/UsageSpecificationOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "ServiceSpecifications":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ServiceSpecificationOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "PolicyRules":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/PolicyRuleOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "TaxServiceProviders":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/TaxServiceProviderOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "ProductRules":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ProductRuleOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "Attributes":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/AttributeOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "Channels":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ChannelOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "Places":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/PlaceOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "MarketSegments":{
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/MarketSegmentOracle"
                },
                "minItems":1,
                "maxItems":50
            },
            "ProductOfferingTermSummaryOracle":{
                "title":"TermSummary",
                "type":"object",
                "description":"Term Summary Oracle",
                "properties":{
                    "name":{
                        "type":"string",
                        "description":"A string. A word, term, or phrase by which a term is identfied"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of term"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the ProductOfferintTerm."
                    },
                    "commitmentTermType":{
                        "type":"string",
                        "enum":[
                            "INSTALLMENT",
                            "LEASE",
                            "SERVICE"
                        ]
                    },
                    "duration":{
                        "$ref":"#/components/schemas/TermDuration"
                    }
                },
                "required":[
                    "@type"
                ]
            },
            "GeographyStructureOracle":{
                "title":"GeographyStructure",
                "type":"object",
                "description":"Geography Structure Oracle",
                "properties":{
                    "geographyType":{
                        "type":"string",
                        "description":"Geography type of the country"
                    },
                    "parentGeographyType":{
                        "type":"string",
                        "description":"Parent geography type for the geography"
                    }
                }
            },
            "RetireSchemaOracle":{
                "title":"RetireSchema",
                "type":"object",
                "description":"Geography Structure Oracle",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the entity"
                    },
                    "version":{
                        "type":"string",
                        "description":"entity version"
                    },
                    "retirementDate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Retirement date-time of the entity"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    }
                }
            },
            "ObsoleteSchemaOracle":{
                "title":"ObsoleteSchema",
                "type":"array",
                "items":{
                    "$ref":"#/components/schemas/ObsoleteSchemaRef"
                },
                "minItems":1,
                "maxItems":50
            },
            "ObsoleteSchemaRef":{
                "title":"ObsoleteSchemaRef",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the entity"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the required entity"
                    },
                    "version":{
                        "type":"string",
                        "description":"entity version"
                    }
                }
            },
            "ZoneValueMapCharOracle":{
                "title":"ZoneValueMapCharOracle",
                "allOf":[
                    {
                        "$ref":"#/components/schemas/CustomProfileSpecChar"
                    },
                    {
                        "type":"object",
                        "properties":{
                            "isRoot":{
                                "type":"boolean",
                                "description":"Describes if the characteristic is root node."
                            }
                        }
                    }
                ]
            },
            "AttributeOracle":{
                "title":"AttributeOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the attribute"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the attribute"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the required Attribute"
                    },
                    "displayName":{
                        "type":"string",
                        "description":"Display Name of the Attribute reference"
                    },
                    "version":{
                        "type":"string",
                        "description":"attribute version"
                    },
                    "description":{
                        "type":"string",
                        "description":"A narrative that explains in detail what the attribute is"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "valueType":{
                        "type":"string",
                        "description":"A kind of value that the attribute can take on, such as numeric, text and so forth",
                        "enum":[
                            "STRING",
                            "NUMBER",
                            "OBJECT",
                            "ARRAY",
                            "DECIMAL",
                            "BOOLEAN",
                            "DATE",
                            "DATETIME",
                            "URL"
                        ]
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Used to indicate the current lifecycle status"
                    },
                    "configurable":{
                        "type":"boolean",
                        "description":"If true, the Boolean indicates that the attribute is configurable"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "@type":{
                        "type":"string",
                        "description":"the class type of this characteristic"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the attribute"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to the schema describing this attribute"
                    },
                    "@valueSchemaLocation":{
                        "type":"string",
                        "description":"This (optional) field provides a link to the schema describing the value type"
                    },
                    "minCardinality":{
                        "type":"integer",
                        "description":"The minimum number of instances an atribute can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality"
                    },
                    "maxCardinality":{
                        "type":"integer",
                        "description":"The maximum number of instances an attribute can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality"
                    },
                    "isUnique":{
                        "type":"boolean",
                        "description":"An indicator that specifies if a value is unique for the attribute. Possible values are; \"unique while value is in effect\" and \"unique whether value is in effect or not\""
                    },
                    "regex":{
                        "type":"string",
                        "description":"A rule or principle represented in regular expression used to derive the value of an attribute value"
                    },
                    "sensitive":{
                        "type":"boolean",
                        "description":"Indicates the sensitive information available"
                    },
                    "runtimeFilterable":{
                        "type":"boolean",
                        "description":"Allows attribute to be exposed these attribute as filter criteria"
                    },
                    "fulfillmentUpdatable":{
                        "type":"boolean",
                        "description":"Indicates runtime system to allow update coming from fulfillment system only for attributes that has this property set to true"
                    },
                    "extensible":{
                        "type":"boolean",
                        "description":"An indicator that specifies that the values for the attribute can be extended by adding new values when instantiating a attribute for a characteristic"
                    },
                    "allowedUnits":{
                        "type":"array",
                        "items":{
                            "type":"string"
                        }
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the creation"
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created item"
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated item"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"A date time (DateTime). Date and time of the last update of the attribute"
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application"
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the attribute"
                    },
                    "attributeRelationship":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/AttributeRelationshipOracle"
                        }
                    },
                    "attributeValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CharacteristicValueSpecification"
                        }
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "AttributeRefOracle":{
                "title":"AttributeRefOracle",
                "type":"object",
                "description":"Attribute Reference: Attributes used to define characteristics of product specification.",
                "properties":{
                    "id":{
                        "type":"string",
                        "description":"Unique identifier of the attribute"
                    },
                    "href":{
                        "type":"string",
                        "description":"Reference of the attribute"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the required Attribute"
                    },
                    "displayName":{
                        "type":"string",
                        "description":"Display Name of the Attribute reference"
                    },
                    "@referredType":{
                        "type":"string",
                        "description":"the class type of associated attribute"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the (class) type of attribute ref."
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"This field provides a link to the schema describing this REST resource"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Indicates<b> </b>the base (class) type of this REST resource"
                    },
                    "versionState":{
                        "type":"number",
                        "description":"To hold the version state for the reference"
                    },
                    "attributeValue":{
                        "type":"array",
                        "items":{
                            "$ref":"#/components/schemas/CharacteristicValueSpecification"
                        }
                    }
                },
                "required":[
                    "@type"
                ]
            },
            "AttributeRelationshipOracle":{
                "title":"AttributeRelationshipOracle",
                "type":"object",
                "description":"An aggregation, migration, substitution, dependency or exclusivity relationship between/among attributes.",
                "properties":{
                    "relationshipType":{
                        "type":"string",
                        "description":"Type of relationship such as aggregation, migration, substitution, dependency, exclusivity",
                        "enum":[
                            "AGGREGATION",
                            "MIGRATION",
                            "SUBSTITUTION",
                            "DEPENDENCY",
                            "EXCLUSIVITY"
                        ]
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriodOracle"
                    },
                    "id":{
                        "type":"string",
                        "description":"the identifier of the associated product specification"
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of the target product specification characteristic"
                    },
                    "href":{
                        "type":"string",
                        "description":"Hyperlink reference to the target product specification"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Class type of target product specification"
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"base class type  (immediate parent) of the productSpecCharRelationship"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"hyperlink reference to schema describing this object"
                    }
                },
                "required":[
                    "id",
                    "name",
                    "relationshipType",
                    "@type"
                ]
            },
            "ChannelOracle":{
                "title":"ChannelOracle",
                "type":"object",
                "properties":{
                    "id":{
                        "type":"string",
                        "maxLength":30,
                        "description":"Unique identifier of the channel."
                    },
                    "name":{
                        "type":"string",
                        "description":"Name of channel."
                    },
                    "description":{
                        "type":"string",
                        "description":"Description of channel."
                    },
                    "href":{
                        "type":"string",
                        "description":"Hypertext Reference of the channel."
                    },
                    "channelType":{
                        "type":"string",
                        "description":"?Channel type such as sales or trouble ticket raising?"
                    },
                    "lastUpdate":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Latest update date of channel."
                    },
                    "lifecycleStatus":{
                        "type":"string",
                        "description":"Status of channel"
                    },
                    "validFor":{
                        "$ref":"#/components/schemas/TimePeriod"
                    },
                    "@type":{
                        "type":"string",
                        "description":"Indicates the type of resource."
                    },
                    "@baseType":{
                        "type":"string",
                        "description":"Immediate base (class) type of the object"
                    },
                    "@schemaLocation":{
                        "type":"string",
                        "description":"A link to the schema describing this object"
                    },
                    "project":{
                        "$ref":"#/components/schemas/ProjectRef"
                    },
                    "version":{
                        "type":"string",
                        "description":"Channel version"
                    },
                    "created":{
                        "type":"string",
                        "format":"date-time",
                        "description":"Date and time of the channel creation."
                    },
                    "createdBy":{
                        "type":"string",
                        "description":"name of the person who created the channel."
                    },
                    "lastUpdatedBy":{
                        "type":"string",
                        "description":"name of the person who updated the channel."
                    },
                    "versionState":{
                        "type":"number",
                        "description":"Version state of the channel."
                    },
                    "externalId":{
                        "type":"string",
                        "description":"id of the external application."
                    },
                    "applicationName":{
                        "type":"string",
                        "description":"name of the external application."
                    }
                },
                "required":[
                    "name",
                    "@type"
                ]
            },
            "ProductOfferingPrice_Schemas":{
                "title":"ProductOfferingPrice_Schemas",
                "oneOf":[
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceAlterationOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceAllowanceOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferRolloverPriceOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceCounterOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPriceOverageOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingPricePlanOracle"
                    },
                    {
                        "$ref":"#/components/schemas/PenaltyPriceOracle"
                    },
                    {
                        "$ref":"#/components/schemas/ProductOfferingBeatPriceOracle"
                    }
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "ProductOfferingPriceOracle":"#/components/schemas/ProductOfferingPriceOracle",
                        "ProductOfferPriceAlterationOracle":"#/components/schemas/ProductOfferingPriceAlterationOracle",
                        "ProductOfferPriceAllowanceOracle":"#/components/schemas/ProductOfferingPriceAllowanceOracle",
                        "ProductOfferRolloverPriceOracle":"#/components/schemas/ProductOfferRolloverPriceOracle",
                        "ProductOfferPriceCounterOracle":"#/components/schemas/ProductOfferingPriceCounterOracle",
                        "ProductOfferPriceOverageOracle":"#/components/schemas/ProductOfferingPriceOverageOracle",
                        "ProductOfferPricePlanOracle":"#/components/schemas/ProductOfferingPricePlanOracle",
                        "PenaltyPriceOracle":"#/components/schemas/PenaltyPriceOracle",
                        "ProductOfferingBeatPriceOracle":"#/components/schemas/ProductOfferingBeatPriceOracle"
                    }
                }
            },
            "PricingLogicAlgorithmSpecification_Schemas":{
                "title":"PricingLogicAlgorithmSpecification_Schemas",
                "oneOf":[
                    {
                        "$ref":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle"
                    },
                    {
                        "$ref":"#/components/schemas/OneTimePLASpecOracle"
                    },
                    {
                        "$ref":"#/components/schemas/UsagePLASpecOracle"
                    },
                    {
                        "$ref":"#/components/schemas/RecurringPLASpecOracle"
                    }
                ],
                "discriminator":{
                    "propertyName":"@type",
                    "mapping":{
                        "PricingLogicAlgorithmSpecificationOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle",
                        "OneTimePLASpecOracle":"#/components/schemas/OneTimePLASpecOracle",
                        "UsagePLASpecOracle":"#/components/schemas/UsagePLASpecOracle",
                        "RecurringPLASpecOracle":"#/components/schemas/RecurringPLASpecOracle"
                    }
                }
            }
        }
    }
}