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
mvf:scenarios [2017/06/21 20:09]
fred.a.cummins_gmail.com [Vocabularies are independent of models]
mvf:scenarios [2019/04/19 18:18] (current)
admin [Formal language formulations in 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 ====
  
Line 174: Line 186:
 [fac] This represents a substantial ​ investment for specification of formulations and associated vocabularies. ​ Maybe SMIF will address this.  Once the formulation language and concepts are established,​ then the formulations for individual concepts must be specified. ​ This is not likely to be a task for typical users of the modeling tools, and there must be business value realized by the developers of these formulations. ​ [fac] This represents a substantial ​ investment for specification of formulations and associated vocabularies. ​ Maybe SMIF will address this.  Once the formulation language and concepts are established,​ then the formulations for individual concepts must be specified. ​ This is not likely to be a task for typical users of the modeling tools, and there must be business value realized by the developers of these formulations. ​
  
-[ejb] MVF only needs to allow for this.  There is no reason why an OWL model or an OCL model cannot be viewed as a "​vocabulary",​ in which the model elements are entries that have terms (model element names) and perhaps formulations in the language (in OWL EquivalentClasses or EquivalentProperties,​ in OCL def or inv).  In a similar way, an SBVR Structured English definition is a formulation in a formal language, not a natural language. In any formal language, as in any natural language, some terms are "​primitive";​ the modeler does not provide definitions. ​ So such "​vocabularies"​ can be considered to be yet another representation of a concept set in some language, and model elements in models can be linked to them.  The only additional concern for these formal languages is the inclusion of "​rules"​ or "​axioms"​ that are not definitions,​ but are treated as part of the formal language "​corpus"​.  ​+[ejb] MVF only needs to allow for this.  There is no reason why an OWL model or an OCL model cannot be viewed as a "​vocabulary",​ in which the model elements are entries that have terms (model element names) and perhaps formulations in the language (in OWL EquivalentClasses or EquivalentProperties,​ in OCL def or inv).  In a similar way, an SBVR Structured English definition is a formulation in a formal language, not a natural language. In any formal language, as in any natural language, some terms are "​primitive";​ the modeler does not provide definitions. ​ So such "​vocabularies"​ can be considered to be yet another representation of a concept set in some language, and model elements in models can be linked to them.  The only additional concern for these formal languages is the inclusion of "​rules"​ or "​axioms"​ that are not definitions,​ but are treated as part of the formal language "​corpus"​
 + 
 +[fac] The use of a formal language would have a significant impact on the MVF metamodel: each concept would have a single definition.  ​The definition specified in a formal language could be expressed in a terms from a user's selected vocabulary. ​ This is quite different from the need to express each concept definition in multiple vocabularies,​ at least for alternative natural languages, but possibly the vernaculars/​dialects of multiple communities. 
 + 
 +[fac] A formal language would also facilitate automated identification of equivalent or similar concept definitions. 
 + 
 +=== Mayo Clinic Examples and Potential Interface Discussion === 
 + 
 +This presentation includes some thoughts by Mayo of how they would like to use the APIs produced by this specification. See {{ :​mvf:​mvf_discussion-mayo-20190419.pptx |}} 
  
 [[http://​www.omgwiki.org/​mvf-rfp/​doku.php?​id=start|home]] [[http://​www.omgwiki.org/​mvf-rfp/​doku.php?​id=start|home]]
  
  
mvf/scenarios.1498075749.txt.gz · Last modified: 2017/06/21 20:09 by fred.a.cummins_gmail.com