User Tools

Site Tools


mvf:scenarios

====== Differences ====== This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
mvf:scenarios [2017/06/21 16:09]
fred.a.cummins_gmail.com [Vocabularies are independent of models]
mvf:scenarios [2017/06/25 17:14]
fred.a.cummins_gmail.com [How are concepts linked across vocabularies?]
Line 142: Line 142:
 In general, an importing tool should be able to discard any part of the import that is not an MVF vocabulary. That would imply that the exported vocabulary should be a separate, or separable, resource from any model per se. The vocabulary may be exported //with// the model, but it should not be //part of// the model. In general, an importing tool should be able to discard any part of the import that is not an MVF vocabulary. That would imply that the exported vocabulary should be a separate, or separable, resource from any model per se. The vocabulary may be exported //with// the model, but it should not be //part of// the model.
  
 +[fac] We should expect that each modeling language has a vocabulary that contains all of the terms that are used to describe its metamodel. ​ This vocabulary is the taken directly from the language specification and is used in the XMI for import/​export of models in that language. Therefore, this is the same vocabulary (same terms and concepts) for all implementations of that modeling language. ​ This vocabulary may also include certain terms or phrases that express additional concepts that occur in standard displays.
 +
 +[fac] In addition, the implementation of a language will include display phrases and terms that are not included in the standard but are required for operational interactions with the user or are otherwise implementation-specific. ​ These should be specified in an implementation-specific vocabulary. ​ Both the concepts expressed by the language-specific vocabulary and the implementation-specific vocabulary should be expressed in vocabularies for expression in different languages. ​ Some (many?) of these concepts will be the same as those required by other modeling languages and could become consolidated in a library of vocabularies.  ​
 +
 +[fac] But note that each modeling language should be first assumed to be a distinct context where many of the concepts are distinct even though they may be referenced using the same terms.
 ==== Vocabularies are independent of models ==== ==== Vocabularies are independent of models ====
  
Line 161: Line 166:
 The user will be primarily concerned with linking his model elements to the relevant entries in //some// vocabulary. The user may treat an imported vocabulary as the reference vocabulary or as an additional vocabulary to link his model elements to, s/he may integrate the imported vocabulary with one s/he developed, extend the imported vocabulary per se, or adopt the imported vocabulary into his/her vocabulary, and use selected entries from it.  Those are all vocabulary management functions that may be associated with the linking process. ​ Dealing with multiple vocabulary integration is thus a major addition to modeling tools. The user will be primarily concerned with linking his model elements to the relevant entries in //some// vocabulary. The user may treat an imported vocabulary as the reference vocabulary or as an additional vocabulary to link his model elements to, s/he may integrate the imported vocabulary with one s/he developed, extend the imported vocabulary per se, or adopt the imported vocabulary into his/her vocabulary, and use selected entries from it.  Those are all vocabulary management functions that may be associated with the linking process. ​ Dealing with multiple vocabulary integration is thus a major addition to modeling tools.
  
 +[fac] IN general, where vocabularies are shared, individual (or group) users should not change the shared vocabulary as that could corrupt that vocabulary for other users. ​ Instead, if the vocabulary concepts are not precisely defined as needed by the user or the user prefers alternative terms, then the user should create a new vocabulary that inherits the concepts and terms of the shared vocabulary and overrides the share vocabulary concepts and terms for the user's model.  ​
 +
 +[fac] The user might explicitly change the meaning of a term by linking it to a new concept definition so the shared concept has no term in the new vocabulary, or the user might define a new term for that concept. ​ Alternatively,​ the terms and usage for the shared an new concepts might be defined as relevant to different contexts.
 ==== How are concepts linked across vocabularies?​ ==== ==== How are concepts linked across vocabularies?​ ====
  
 As worded above, the only link between the terms and definitions for the same concept in multiple language vocabularies is the model element (which would satisfy the RFP intent). ​ It should, however, be possible in creating and maintaining vocabularies to make such links as annotations to a vocabulary entry, and then to include those links in the exported vocabulary file.  In that case, the model element need only to point to one of them, and implicitly refer to the others transitively. As worded above, the only link between the terms and definitions for the same concept in multiple language vocabularies is the model element (which would satisfy the RFP intent). ​ It should, however, be possible in creating and maintaining vocabularies to make such links as annotations to a vocabulary entry, and then to include those links in the exported vocabulary file.  In that case, the model element need only to point to one of them, and implicitly refer to the others transitively.
  
 +[fac] Within a single modeling environment,​ or a single, shared vocabulary library, each concept must have a distinct element. ​ Similarly, each concept must have one definition, although that definition may be expressed differently in different vocabularies unless there is a formal expression language that enables the same definition to be expressed in the languages of different vocabularies.
  
 +[fac] However, when vocabularies are shared, the user may need some of the same concepts and may have new concepts to add.  The fundamental problem is for the user to determine if there is a concept already defined or if a new concept is needed. ​ If the shared vocabularies include a vocabulary in a language familiar to the user then the search for a defined concept is easier, but candidate concepts may still not meet the user's requirement. ​ If there is no familiar-language vocabulary, then the user has a more difficult problem. ​ We might assume that there is an appropriate vocabulary for the modeling language, but the user will still need the help of somebody who can interpret definitions in one of the existing vocabularies..
  
 +[fac] Note that a vocabulary library (a set of vocabularies) will have one concept element for each concept that is linked to the element for the associated term in each vocabulary. ​ Consequently,​ when a user wants to use and existing vocabulary library, either for a new model or to add vocabularies to an existing library, There is a need to support a mechanism for finding a concept if a needed concept exists in the library. ​ A couple approaches are possible: (1) provide a thesaurus to group similar concepts (requires the user to update the thesaurus when adding a concept), or (2) provide a taxonomy/​classification network that traces general concepts to more specific concepts (easier for the user to update for new concepts).
  
 +[fac] Defining a global identifier for each concept does not help since the user must still search for a desired concept and possibly refine an existing concept definition to distinguish a new concept.
 ==== Formal language formulations in vocabularies ==== ==== Formal language formulations in vocabularies ====
  
mvf/scenarios.txt ยท Last modified: 2019/04/19 14:18 by admin