Data Dictionary building block architecture

The Data Dictionary building block consists of clients and services that connect to the back-end system.

View full size graphic
Data Dictionary building block architecture

Data Dictionary building block clients

The Data Dictionary clients include:

  • Data Dictionary Java clients (adobe-dct-client.jar). The Java clients include server-side value objects, service APIs, and exception classes required for any custom code for the building block.

  • Data Dictionary Flex client (adobe-dct-flex-services.swc): The Flex client includes various ActionScript Value Objects, Data Dictionary service Flex APIs, events, and fault handling.

  • Data Dictionary building block user interface components. The Data Dictionary building block user interface components (Data Dictionary Editor, Data Elements Panel) use the Data Dictionary Services for interacting with the back-end repository.

    • Data Dictionary Editor: The Administrator user interface for creating and modifying a data dictionary, its properties, and elements. In the Definition view and Properties view, you can associate the value of various properties with the data dictionary elements. You can associate metadata with a data dictionary and each of its elements by adding extended properties.

    • Data Elements Panel. The user interface for creating DDE and place holder variables which are displayed in table and tree formats. You also perform live searches on the Display Name for a DDE.

Data Dictionary building block services

The Data Dictionary building block services are exposed as OSGi services. Following is the list of services that are provided in Data Dictionary building block:

  • DataDictionaryRegistryService: This service provides the following operations for the Data Dictionary building block.

    • getAllDataDictionaries: Returns all data dictionaries.

    • publishDataDictionary: Publish the data dictionary.

    • revertToLastPublished: Revert to the last published version of the data dictionary.

    • markReadyToPublish: Mark the given Data Dictionary ready to Publish.

    • getDataDictionaries: Returns all data dictionaries based on a search.

    • getDataDictionary: Returns a data dictionary object that corresponds to an identifier.

    • createDataDictionary: Creates a data dictionary.

    • updateDataDictionary: Updates an existing data dictionary.

    • deleteDataDictionary: Deletes a data dictionary.

    • getAllDataDictionaryReferences: Returns all data dictionary references.

    • getDataDictionaryReferences: Returns all data dictionary references that meet the criteria specified in a search filter.

    • getSystemDataDictionaries: Returns all system data dictionaries.

  • DataDictionaryUtilService: This service provides the following data dictionary utility functions:

    • getDataDictionaryFromXSD: Import an XSD to create a data dictionary.

    • exportDataDictionaryAsFML: Export an existing data dictionary as an annotated FML.

    • getSampleXMLDataForDD: Create sample XML data for the data dictionary.

    • createDDInstanceFromXml: Creates the data dictionary instance (DDI) corresponding to a Data Dictionary using an input XML.

    • serializeDDItoXML: Generates a XML data representing the input Data Dictionary Instance

    • getDataDictionaryFromFML2: Generates a data dictionary from the input fiber model

    • hasCommonCollectionHierarchy: This verifies whether the collection elements are used in appropriate hierarchy. Two important rules are applied in order to verify the hierarchy.

    • getDDIFromRemotingService: This API uses the Adobe® LiveCycle® Data Services 10 Remoting Service details from the Data Dictionary and connects to the same for making a LCDS Remoting invocation.

Back-end integration layer

The server-side component of the Platform Content exposes operations/APIs to interact with the underlying repository that stores the assets. The services component for the Data Dictionary building block encapsulates APIs for the assets that interact with the Platform Content server-side APIs. The server-side component of the Platform Content facilitates operations and other utility APIs, such as list of dependencies on an asset and downloading the content bytes for an asset.

Note: Unlike other assets, the Data Dictionary is not republished automatically when a parent asset is published. You are expected to publish the Data Dictionary to ensure that each asset on the publish node is consistent within the Data Dictionary.

// Ethnio survey code removed