.. This work is licensed under a Creative Commons Attribution 4.0 International License.

Documentation organized by the project delivering them.

.. note::
   The list below is the initial reference to project information created
   when integrating as a submodule.  For the release notes document, 
   these references will be changed to release notes and artifacts
   Other project information will referenced in developer and user guides.


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

   aaf/authz <../submodules/aaf/authz.git/docs/index>
   aai/aai-common <../submodules/aai/aai-common.git/docs/index>
   aai/data-router <../submodules/aai/data-router.git/docs/index>
   aai/esr-gui <../submodules/aai/esr-gui.git/docs/index>
   aai/esr-server <../submodules/aai/esr-server.git/docs/index>
   aai/resources <../submodules/aai/resources.git/docs/index>
   aai/search-data-service <../submodules/aai/search-data-service.git/docs/index>
   aai/sparky-be <../submodules/aai/sparky-be.git/docs/index>
   aai/sparky-fe <../submodules/aai/sparky-fe.git/docs/index>
   aai/traversal <../submodules/aai/traversal.git/docs/index>
   appc/deployment <../submodules/appc/deployment.git/docs/index>
   appc <../submodules/appc.git/docs/index>
   ccsdk/dashboard <../submodules/ccsdk/dashboard.git/docs/index>
   ccsdk/distribution <../submodules/ccsdk/distribution.git/docs/index>
   ccsdk/parent <../submodules/ccsdk/parent.git/docs/index>
   ccsdk/platform/blueprints <../submodules/ccsdk/platform/blueprints.git/docs/index>
   ccsdk/platform/nbapi <../submodules/ccsdk/platform/nbapi.git/docs/index>
   ccsdk/platform/plugins <../submodules/ccsdk/platform/plugins.git/docs/index>
   ccsdk/sli/adaptors <../submodules/ccsdk/sli/adaptors.git/docs/index>
   ccsdk/sli/core <../submodules/ccsdk/sli/core.git/docs/index>
   ccsdk/sli/northbound <../submodules/ccsdk/sli/northbound.git/docs/index>
   ccsdk/sli/plugins <../submodules/ccsdk/sli/plugins.git/docs/index>
   ccsdk/storage/esaas <../submodules/ccsdk/storage/esaas.git/docs/index>
   ccsdk/storage/pgaas <../submodules/ccsdk/storage/pgaas.git/docs/index>
   ccsdk/utils <../submodules/ccsdk/utils.git/docs/index>
   clamp <../submodules/clamp.git/docs/index>
   cli <../submodules/cli.git/docs/index>
   dcaegen2 <../submodules/dcaegen2.git/docs/index>
   dmaap/messagerouter/messageservice <../submodules/dmaap/messagerouter/messageservice.git/docs/index>
   holmes/engine-management <../submodules/holmes/engine-management.git/docs/index>
   holmes/rule-management <../submodules/holmes/rule-management.git/docs/index>
   integration <../submodules/integration.git/docs/index>
   logging-analytics <../submodules/logging-analytics.git/docs/index>
   modeling/modelspec <../submodules/modeling/modelspec.git/docs/index>
   msb/apigateway <../submodules/msb/apigateway.git/docs/index>
   msb/discovery <../submodules/msb/discovery.git/docs/index>
   msb/java-sdk <../submodules/msb/java-sdk.git/docs/index>
   msb/swagger-sdk <../submodules/msb/swagger-sdk.git/docs/index>
   multicloud/framework <../submodules/multicloud/framework.git/docs/index>
   oom <../submodules/oom.git/docs/index>
   optf/has <../submodules/optf/has.git/docs/index>
   policy/engine <../submodules/policy/engine.git/docs/index>
   portal <../submodules/portal.git/docs/index>
   sdc/jtosca <../submodules/sdc/jtosca.git/docs/index>
   sdc/sdc-distribution-client <../submodules/sdc/sdc-distribution-client.git/docs/index>
   sdc/sdc-docker-base <../submodules/sdc/sdc-docker-base.git/docs/index>
   sdc/sdc-titan-cassandra <../submodules/sdc/sdc-titan-cassandra.git/docs/index>
   sdc/sdc-tosca <../submodules/sdc/sdc-tosca.git/docs/index>
   sdc/sdc-workflow-designer <../submodules/sdc/sdc-workflow-designer.git/docs/index>
   sdc <../submodules/sdc.git/docs/index>
   sdnc/adaptors <../submodules/sdnc/adaptors.git/docs/index>
   sdnc/architecture <../submodules/sdnc/architecture.git/docs/index>
   sdnc/core <../submodules/sdnc/core.git/docs/index>
   sdnc/features <../submodules/sdnc/features.git/docs/index>
   sdnc/northbound <../submodules/sdnc/northbound.git/docs/index>
   sdnc/oam <../submodules/sdnc/oam.git/docs/index>
   sdnc/parent <../submodules/sdnc/parent.git/docs/index>
   sdnc/plugins <../submodules/sdnc/plugins.git/docs/index>
   so/libs <../submodules/so/libs.git/docs/index>
   so <../submodules/so.git/docs/index>
   usecase-ui <../submodules/usecase-ui.git/docs/index>
   vfc/nfvo/lcm <../submodules/vfc/lcm.git/docs/index>
   vfc/nfvo/lcm <../submodules/vfc/nfvo/lcm.git/docs/index>
   vid/asdcclient <../submodules/vid/asdcclient.git/docs/index>
   vid <../submodules/vid.git/docs/index>
   vnfrqts/guidelines <../submodules/vnfrqts/guidelines.git/docs/index>
   vnfrqts/requirements <../submodules/vnfrqts/requirements.git/docs/index>
   vnfsdk/model <../submodules/vnfsdk/model.git/docs/index>
