S3000L & S3KL Ontology

This page is about how to represent S3000L Issue 1.1 using SemanticWeb technology.

For any further information and specification of S3000L please see the home page of
AIA/ASD S3000L International procedure specification for Logistic Support Analysis (LSA).

The S3000L data-model is defined as UML block diagram, as text and also by a corresponding XML schema. There are a few minor differences between these three definitions. In such cases the XML schema had been followed in the mapping because this was developed after the PDF documentation and is directly used for data exchange.

The general strategy on how the S3000L data-model is mapped into a corresponding OWL is outlined below. The mapping has been done manually to achieve an optimal result. The detailed mapping for each S3000L element is defined in the formal S3000L_to_OWL_Mapping document and is also indicated in the S3KL ontology file s3kl.ttl.

Default mapping for Class Blocks:
Whenever suitable, an UML Block/Class with no special stereotype  is converted into a corresponding OWL Class, a UML relation into an OWL ObjectProperty and a simple UML property into an OWL DatatypeProperty. However there are many cases when this pattern is not followed to achieve a more efficient ontology.

Interface Blocks:
UML Blocks with the stereotype "interface" that are interfaces for a single class only are not converted into OWL because their purpose is only to define a specific role for a relationship. This role is then covered by the relationship. Example is the interface Contractor that defines the role for an Organization for a ContractContractor relationship.

UML Blocks with the stereotype "interface" that are interfaces for a several class are typically mapped by an OWL Class, that is the union of the underlying classes.

Relationship Blocks:
UML blocks with the stereotype "relationship" are typically converted into a corresponding OWL ObjectProperty. Properties of a block and relations to it are typically manages by punning of the ObjectProperty. Example:

  • the relationship block ContractRelationship that maps to the OWL ObjectPropoerty s3kl:contractRelationship (lower case!).
  • to support punning of this property, the additional OWL class s3kl:ContractRelationship (upper case!) is defined that contains all sub-properties of s3kl:contractRelationship,
  • the UML classification attribute contractRelationshipType is supported by the OWL class s3kl:ContractRelationshipType, whose members are subclasses of s3kl:ContractRelationship.
  • the pre-defined classification "subcontract" is mapped to the OWL class s3kl:ContractRelationshipType_subcontract that is of type s3kl:ContractRelationshipType


S3000L classifications:
For each UML Class or relationship-block with a classification attribute a special OWL base class is defined, whose members will be classes, one for each classification value.
The pre-defined S3000L classifications are supported by OWL Classes whose name is constructed by the name of the base class plus the name of the specific classification separated with by  "_".  These class definitions also contain an s3kl:xsdCode DatatyeProperty that defines the XML code to be used for data exchanged according to the provided XML schema.



Introduction of Occurrence:

Further Information: