Schema Repository is used to store external schemas that are referred by schemas on the component ports. The imported schemas referred from anywhere in an Event Process/component can be stored here so that they are resolved even when they are not added explicitly. Hence, schemas which are imported across multiple event processes/components can be stored in the schema repository.

Adding Schema to the Schema Repository

To add schemas to the Schema Repository, perform the following steps.

  • Navigate to Tools > Schema Repository. This opens a Schema Repository editor using which schemas can be added to schema repository.


Figure 1: Schema Repository

  • To add schema files to the catalog, click Add to Catalog button shown in above figure . This opens a dialog where in after adding schemas click ok to add them to catalog.


Figure 2: Adding XML files dialog

  • To add schema files, click Add button and select the Add File(s) option. Folders containing multiple schemas can also be added to the catalog using Add Folder option. Select the suitable option and choose the required file(s) or folder from the browser window opened.


Figure 3: Adding XML files to Catalog

  • A confirmation dialog will be opened asking if the files need to be saved to the Catalog folder. If answered with Yes, the schema files will be saved in <FIORANO_HOME>/xml-catalog/user folder upon clicking the OK button. Otherwise the absolute path of the files' original location will be used to refer the schema.
  • The Namespace URI and Location of all the files chosen will be populated in the table. Selecting a particular entry will show its details in the Details panel.
  • Any changes to the URI or File Location in Catalog can be modified from the Details panel and the changes can be saved using the Save button.

 

Icon

If an entry has empty URI string or if two or more entries have the same URI, such entries will be shown in red and an error message describing the problem with the entry will be shown in its Details.


Figure 4: Adding schema to Schema Repository

  • Make sure all the entries are added without any errors and click ok button to add the schemas to Schema Repository. The schema files for which the user chooses the Save to Catalog Folder option will be added to <FIORANO_HOME>/xml-catalog/user directory and directories added will be copied along with all the sub-folders and files.
  • If the Save to Catalog Folder option is not chosen, the files will be referred from their original locations.
  • A new row specifying the URI and Location of each XSD will be added to the table displayed at the bottom of the dialog as shown in the figure below.
Icon
  • Schema files which are not saved in the catalog folder will be referred by their absolute paths. Refer Entry 3 in the figure below.
  • If a folder is added, relative paths will be used to refer them in the catalog. Refer entry 4 and 5.


Figure 5: Table displaying the schema files added to catalog

  • Separate xml-catalogs are maintained for Offline, Online and Mapper perspectives.
    • Offline Perpspective xml-catalog path : %FIORANO_HOME%/runtimedata/eStudio/workspace/.repositories/Offline/xml-catalog
    • Online Perpspective xml-catalog path: %FIORANO_HOME%/runtimedata/eStudio/workspace/.repositories/Online/%ENTERPRISE_SERVER%/xml-catalog
    • Mapper Perspective xml-catalog path: %FIORANO_HOME/xml-catalog

When Perspective switch is done the respective xml-catalog of the perspective will be referred and Schema Repository Tool displays the schemas in the current perspective's xml-catalog.

Schema Repository in Online Perspective

Fiorano Enterprise server maintains its own schema repository in %FIORANO_HOME%/runtimedata/repository/Schemas.

When login to a server all the schemas present in server are loaded in to local online xml-catalog and when logged out of server those are cleared.

Export/Import Event Processes with Schema References

  • Export Event Process: If the application being exported has schema references, all those will be copied to %EVENT_PROCESS%.zip/userschemas folder.
  • Import Event Process: If the application being imported has schema references, the schema references present in %EVENT_PROCESS%.zip/userschemas folder are added to local online schema repository and server schema repository and then the event process is deployed to server.

Component configuration with store imported schemas

If a component is configured with store imported schemas, the imported schemas are added to local xml-catalog and only on event process save the schema references are added to server.

Multiple eStudios connecting to same Enterprise Server

This feature has to be used with care when multiple eStudios are connected to the same Enterprise Server and Event Process composition is being done from all the Studios.
Consider an example where two different eStudios are connected to an Enterprise Server and eStudio1 creates a new Event Process EP1 and deploys it to the Server. Let's assume EP1 has a schema reference schema1.

Suppose if EP1 is not opened in eStudio2 ? this Event Process is not fetched in eStudio2. In this case if a new Event Process EP2 is created in eStudio2 having schema reference schema1 (since the Event Process is not fetched in eStudio2, it is unware that schema1 is used in EP1) and when EP2 is deployed to the Server, it renames schema1 to some other name and updates EP2 to avoid conflicts.

When this case happens eStudio2 complains that the new schema file is missing as EP2 is updated when deployed to the server.

To avoid this situation EP1 has to be opened in eStudio2 before creating EP2. If the worst case happens then Logout and Login to the server re-fetches the schemas and the issue will be resolved.

Deleting Schemas

Schemas can be removed from online schema repository by selecting a schema and clicking Remove button; a warning appears where you can accept to delete or cancel.


Figure 6: Online Schema Delete Warning

Schema Repository in Offline Perspective

Export/Import Event Processes with Schema References

  • Export Event Process: If the application being exported has schema references, all those will be copied to %EVENT_PROCESS%.zip/userschemas folder.
  • Import Event Process: If the application being imported has schema references, the schema references present in %EVENT_PROCESS%.zip/userschemas folder are added to local offline xml-catalog and then the event process is added offline application repository.
  • Export Event process to server: If the application has schema references the schemas from local Offline xml-catalog are added to server and application from offline repository is deployed to server.
  • Import Event Process From server: The schema references from server are added to local Offline xml-catalog and event process is added to offline repository.

Deleting Schemas

Schemas can be removed from online schema repository by selecting a schema and clicking Remove button; a warning appears where you can accept to delete or cancel.


Figure 7: Offline Schema Delete Warning

Adaptavist ThemeBuilder EngineAtlassian Confluence