|
Vincent Marchetti KShell Analysis vmarchetti@kshell.com |
Paulo Moura Departamento de Informática Universidade da Beira Interior pmoura@di.ubi.pt |
STEP [ISO 10303] is an international standard for modeling information used in manufacturing activities; Part 21 is the component of STEP that enables a semantically well-defined data model to be exchanged through a text file. A Part 21 file can be considered a collection of instances of entities defined in a schema or information model developed in the EXPRESS information modelling language. These instances have defined attribute values and instance references which define the content of the data model. This site presents and demonstrates software components which allow reading and processing Part 21 files using the Logtalk computer language. Logtalk is an object-oriented extension to Prolog; and so combines a logic programming paradigm with object-oriented software techniques. A logic programming approach has been demonstrated using translation of a Part 21 file into a database of Prolog clauses and there it was shown that logic programming techniques allow very concise navigation among the instances that make up a data model [See Prolog--STEP site]
See Figure -- Logtalk-STEP architecture.
In the form below the user may choose a STEP Part 21 on the client machine to be uploaded to this server, or may choose either of two sample Part 21 files resident on this server. Clicking on the Translate to Logtalk button will then invoke the translator application which on successful completion will present a webpage offering the opportunity to download and view the text file of Logtalk instances and to run a validation script, written in Logtalk, on the server, with text results presented to the user on completion.
The translation below is intended for use with Part 21 files conforming to AP 203 (configuration controlled design) -- The translation is possible for a selection of other Application Protocols [AP 214, AP 238] but at this point the supporting schema have not been implemented as Logtalk objects, so the data instances resulting from these translations cannot be used in computation.
26 Dec 2006