The MDS repository is an important mechanism for SOA Suite 12c, both at design time during development as well as at run time. At design time, MDS is used to host shared resources such as WSDL and XSD documents that are referenced in many different places. Instead of copying these resources between applications and projects, or creating central shared folders that are managed manually and at file system level, MDS is concept that is native to JDeveloper and therefore much easier to use with these shared resources.
In SOA Suite 12c, a design time, file based MDS repository is part of the development environment – out of the box. You can create your own file based MDS repositories in addition to this out-of-the-box instance.
When you open the Resource window, under IDE Connections | SOA-MDS, you will find the connection to this local, file based repository – that is initially empty.
Resources can be added to the MDS, for example by transferring them from SOA composite or Service Bus projects. Resources can also be transferred from the MDS to Service Bus projects. I am not sure yet how to transfer resources from MDS to a SOA composite application.
However, as stated before, this out of the box file based design time MDS repository is local. Resources added to it, are not shared with MDS repositories in some other location. SOA composites that contain references that start with oramds: cannot be shared unless the sharing partners all have the referenced resources in their local MDS repositories. That’s why it is very convenient to be able to export selected resources from a design time file based MDS environment – to a jar-file – and import resources from this jar-file to MDS repositories in other environments. I just used this mechanism to bring resources across from one VM to another.