.. This work is licensed under a
.. Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
.. Copyright 2017 AT&T Intellectual Property.  All rights reserved.


.. note::
   Some high level groupings are introduced below with references to
   project/repo/docs/architecture.rst or similar architecture references.
   As more information is provided by each project in a docs/architecture.rst
   file, it will appear here.   Show source to see the references in each grouping.

References
==========

Models
------

.. toctree::
   :maxdepth: 1
   :titlesonly:

:ref:`Model Specifications<onap-modeling-modelspec:master_index>`

User Interfaces
---------------

.. toctree::
   :maxdepth: 1
   :titlesonly:

| :ref:`APPC CDT Application Controller Design Tool<onap-appc:appc_lcm_api_guide>`
| :ref:`CLAMP - Closed Loop Automation Platform<onap-clamp:architecture>`
| :ref:`CLI - Command Line Interface<onap-cli:architecture>`
| :ref:`PORTAL<onap-portal:architecture>`
| :ref:`SDC - Service Design and Creation<onap-sdc:architecture>`
| :ref:`UUI- Usecase UI<onap-usecase-ui:architecture>`
| :ref:`VID - Virtual Infrastructure Deployment<onap-vid:architecture>`

Platform Components
-------------------

.. toctree::
   :maxdepth: 1
   :titlesonly:

| :ref:`APPC - Application Controller<onap-appc:master_index>`
| :ref:`DCAE - Data Collection Analytics and Events<onap-dcaegen2:architecture>`
| :ref:`Holmes<onap-holmes-rule-management:architecture>`
| :ref:`Policy<onap-policy-engine:architecture>`
| :ref:`SDNC - SDN Controller OAM<onap-sdnc-oam:architecture>`
| :ref:`SO - Service Orchestrator<onap-so:architecture>`
| :ref:`VFC - Virtual Function Controller<onap-vfc-nfvo-lcm:architecture>`

Common Services
---------------

.. toctree::
   :maxdepth: 1
   :titlesonly:

| :ref:`AAF - Application Authorization Framework<onap-aaf-authz:master_index>`
| :ref:`AAI - Active and Available Inventory<onap-aai-aai-common:architecture>`
| :ref:`AAI ESR<onap-aai-esr-gui:architecture>`
| :ref:`DMAAP MR - Data Management as a Platform (Message Router)<onap-dmaap-messagerouter-messageservice:architecture>`
| :ref:`ExtAPI - External API NBI<onap-externalapi-nbi:architecture>`
| :ref:`Logging Framework -<onap-logging-analytics:logging_user_guide>`
| :ref:`MSB - Microservices Bus<onap-msb-apigateway:architecture>`
| :ref:`Multi Cloud<onap-multicloud-framework:multicloud-administrator-guide>`
| :ref:`MUSIC - Multi-site State Coordination Service<onap-music:architecture>`
| :ref:`OOM - ONAP Operations Manager<onap-oom:oom_project_description>`
| :ref:`OPTF - Optimization Framework<onap-optf-osdf:architecture>`
| :ref:`VNF SDK<onap-vnfsdk-model:offeredapis>`

