# COSMOS User's Guide

# Using the Service Modeling Language

The purpose of the Service Modeling Language (SML) tooling is to view and edit SML-IF documents, and to validate the content of SML and SML-IF documents. The SML-IF tooling plug-in also provides export and import wizards that are integrated into the Eclipse SDK Platform.

- Export operation creates an SML-IF document from the repository
- Import operation parses an SML-IF document into individual separate SML model documents and stores them in the repository (which can be a workspace folder).

The export operation packages and validates a set of documents representing an SML model to be interchanged into a single XML-based document in a standard way. The set of documents to be interchanged is called the SML-IF document's interchange set. The documents in the interchange set constitute the SML model being interchanged.

Note: During the import operation, there would normally be some loss of data when an SML-IF document is broken into its respective SML model units. For example, the aliases associated with a document or Schematron rule binding are not preserved in SML model units. To preserve this information, a metadata file is generated with every SML-IF document import.

The SML-IF validator helps to ensure an SML-IF document meets the following criteria:

- Conforms to XML 1.0 (Second Edition).
- Conforms to ISO Schematron rules bound to documents.
- Is valid under the SML-IF and SML schemas.
- Conforms to the SML-IF and SML specifications, version 1.

The SML-IF Specification defines the format for a single XML-based document that can be used to exchange SML models between other consumers of SML models.

The SML-IF tooling plug-in includes a multi-page editor that contains three tabs.

- Overview - The Overview window displays general information about the SML-IF document.
- Documents - The Documents window displays definitions, instances, logical representation, alias names and logical tree, and a source representation of the selected document section.
- Source view - The Source View window shows the raw source of the SML-IF file, color-coded with syntax highlighting.

Summary

SML is an important step to drive significant, cross-platform business modeling improvements for IT professionals and their business platforms. SML provides an industry-agreed foundation for model-based management. SML allows developers to build modeling information for applications, devices and services that can be used during all stages of applications or service lifecycle, including configuration, problem, change, and release management.

As a common modeling language, SML simplifies IT management in multi-vendor environments. This provides a way for information to be shared across diverse tools and applications. It reduces both the cost and complexity associated with delivering the levels of service and responsiveness businesses need from IT today.

The SML tooling provides an editor for an SML-IF document. The tool also provides the ability to import SML-IF documents into a project and export SML model units to an SML-IF document. An SML-IF document packages the collection of SML documents to be interchanged as a single XML document. All exported SML-IF documents conform to the schema defined by the SML-IF specification.

Term Definitions

The following list contains some basic terms you should know to make using this documentation easier.

SML
  Service Modeling Language (SML) is an XML-based specification that is used to model complex IT resources, services and systems, including their structure, constraints, policies and best practices. An SML model defines a consistent way for computer networks, applications, servers and other IT resources to be described or modeled to assist businesses to manage their services that are built on these. The SML specification leverages Schematron and unique XML Schema extensions to implement these models.

SML-IF
  Service Modeling Language - Interchange Format (SML-IF) defines an implementation-neutral interchange format that preserves the content and interrelationships among documents.

Definition
  A definition is one of two types of documents supported by SML-IF. A definition document is used to describe the structure and constraints of the model.

Instance
  An instance is one of two types of documents supported by SML-IF. An instance document describes a model entity.

SML repository
  In the SML tooling, this is a flat-file based directory structure. Each file in the structure contains an SML document. The Import operation creates SML document files based on the top-level resources found in an input SML-IF document.

SML validation
  Validating an SML model in accordance with the SML specification.

SML-IF validation
  Validating an SML-IF document in accordance with the SML-Interchange Format specification.

Domain model
  The root of an SML-IF document. Contains a set of definition and instance documents.

SML resources

Additional resources for SML are found at these locations:

- W3C Architecture domain SML Working Group
- W3C Architecture domain SML Charter
- W3C SML Version 1.1 submission
- W3C SML Interchange Format Version 1.1 submission
- Schematron
- XML Schema

Opening an SML-IF Document in an Editor

The SML tooling provides an editor that allows you to view and edit an SML-IF file. Use one of two ways to open an SML-IF document in this editor:

- Select File > Open... from the menu bar, and choose the file from the file system
- Double-click on an SML-IF file that exists in the Eclipse workspace

The SML-IF editor has these three main sections.

- Overview section
- Document section
- Source View section.

To view a specific section, select one of the tabs located at the bottom of the editor.

Overview Section

Fields on the Overview section of the SML-IF document editor

Field | Required | Description
--- | --- | ---
Name | Yes | Name field is the namespace for the SML-IF document.
Version | No | Specifies the version level of the model.
Display name | No | Descriptive name of the model intended for display .
Base URI | No | The base Uniform Resource Identifier (URI) provides a simple and extensible means for identifying a resource. For example, the URL http://www.eclipse.org/ is a URI that identifies a resource.
Description | No | This is a detailed description of the model.

Validate the Entire Document Function on the Overview Section

To validate the SML-IF document, click Validate the entire document. This function validates the entire SML-IF document and reports any errors in the Problems view of your workbench. See Validating an SML-IF document for more information on validation.

Import Model into Repository Function

To import the SML-IF document, click Import model into repository. This function imports the SML resources represented in the SML-IF document into the SML repository. See Importing an SML-IF document into the repository more information on importing.

Documents Section

The SML-IF editor Documents window displays an SML-IF document's definition and instance elements and their aliases, with elements organized in a logical tree.

You can view a tree display of definition and instance documents, and change the aliases of an individual document by selecting a resource and clicking the Add or Remove button. You can also view the subset of the SML-IF file that defines a document or instance element by selecting that element in the tree view, and that element's source will be displayed in the XML Representation field

Fields on the Documents Section of the SML-IF Document Editor

Field | Description
--- | ---
Documents | Two types of documents are supported by SML-IF: Definition documents that describe the structure (schema) and constraints (Schematron rule) of the model Instance documents that describe a model entity.
Logical Representation | Two types of logical representation are contained in an SML-IF document: Alias is an alternative and usually easier to understand or a more significant name for a defined data object. Logical Tree is a logical representation of the relevant structure specified by the tags and attributes in the document.
XML Representation | XML source of the selected element

Source Section

The Source section of the editor is displayed by clicking the Source tab. The Source section displays the text content of the SML-IF document with color syntax highlighting.

[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]