Changes between Version 7 and Version 8 of Support Information Model 3 Assumed Types


Ignore:
Timestamp:
Oct 12, 2008, 6:00:12 PM (16 years ago)
Author:
KOBAYASHI, Shinji
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Support Information Model 3 Assumed Types

    v7 v8  
    44
    55= 3 Assumed Types =
    6 == 3.1 概要 ==#overview
     6== 3.1 概要 == #overview
    773.1 Overview
    88
     
    2323openEHRには二つの意図がある。第1には、モデルをベースとしたopenEHRのソフトウェアを保証するために、既存の実装技術を使ってできるだけ簡単に構築することである。第2には、便利に指定できるopenEHRモデルとして有効であるようにすると同時に、実装形式でみられる型について最小限想定しておくことである。ISO 11404 (2003)標準には実装技術のために「汎用データ型(GPD; General Purpose Datatypes[[FootNote(本仕様書には data types とあるが、ISO 11404のドキュメント内部にはDatatypesと表現されている。ここではISO 11404の表記を優先した)]])」の基本的セマンティクスが提示されており、本文書では型について想定されることについて記述するための基準となる基礎として利用している。本文書で記述される演算(operation)やプロパティ(property)は、ISO 11404で使われているものと互換性を持つが、11404がオブジェクト指向の関数を持たないためまったく同じではない。たとえば、概念的関数 has(!x:T) (集合の中に値が存在するかどうか試す)は以下で Set<T>型で定義されているが、ISO 11404 のSet型にはなく、その代わりに !IsIn(x: T; s: Set<T>)関数が定義されている。しかしながら、オブジェクト指向形式では、集合型で !IsIn関数が定義されていると通常は「そのsubsetである」ことを意味する。開発者のために明確な正確性を期するためにオブジェクト指向形式の関数やプロパティを本文書では使用している。
    2424
    25 
    2625The intention in openEHR is twofold. Firstly, to ensure that openEHR software based on the models integrates as easily as possible with existing implementation technologies, and secondly, to make the minimum possible assumptions about types found in implementation formalisms, while making sufficient assumptions to both enable openEHR models to be conveniently specified. The ISO 11404 (2003) standard contains basic semantics of “general purpose data types” (GPDs) for information technology, and is used here as a normative basis for describing assumptions about types. The operations and properties described here are compatible with those used in ISO 11404, but not always the same, as 11404 does not use object-oriented functions. For example, the notional function has(!x:T) (test for presence of a value in a set) defined on the type Set<T> below is not defined on the ISO 11404 Set type; instead, the function !IsIn(x: T; s: Set<T>) is defined. However, in object-oriented formalisms, the function !IsIn defined on a Set type would usually mean ‘subset of’. In the interests of clarity for developers, an object-oriented style of functions and properties has been used here.
    2726
     
    4039== 3.2 組み込みプリミティブ型 == #inbuilt
    41403.2 Inbuilt Primitive Types
    42 
    4341
    4442以下の型はopenEHRの実装形式において想定される最小範囲内のプリミティブ型を構成している。
     
    5553||Double||64ビット実数を表現する型。IEEEの倍精度浮動小数点を含む何らかの相互可用性を持つ表現をとる。||Real||
    5654
    57 
    58 
    5955||Type name in openEHR||Description||ISO 11404 Type||
    6056||Octet||represents a type whose value is an 8-bit value.||Octet||
     
    6662||Double||type which represents 64-bit real numbers, in any interoperable representation including double-precision IEEE floating point.||Real||
    6763
     64[[BR]]図2は組み込みプリミティブ型を示している。単純継承を使うことで、以下に示す型についての記載を簡単にしている。"Any"クラスは一般的には全てのオブジェクト指向型システムで"Any"あるいは"Object"と呼ばれる最上位のものであることを表している。Anyクラスからの継承あるいはそれに対する大体可能性についてはopenEHRでは想定されていない(したがって、UMLでは点線で示されている)。
     65
    6866FIGURE 2  illustrates the built-in primitive types. Simple inheritance relationships are shown which facilitate the type descriptions below. A class “Any” is used to stand for the usual top-level class in all object-oriented type systems, typically called something like “Any” or “Object”. Inheritance from or subsitutability for an Any class is not assumed in openEHR (hence the dotted lines in the UML). It is used here to enable basic operations like ‘=’ to be described once for the type Any, rather than in every subtype. The type Ordered_numeric is on the other hand assumed for purposes of specification in the openEHR data_types.quantity package, and is intended to be mapped to an equivalent type in a real type system (e.g. in Java, java.lang.Number). Here it is assumed that the operations defined on Ordered_numericare available on the types Integer, Realand Double in implementation type systems, where relevant. Data-oriented implementation type systems such as XML-schema do not have such operations.
    6967
     
    8280
    8381FIGURE 2  Primitive Types Assumed by openEHR
    84 
    85 Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 14 of 67] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}]
    86 
    87 [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15429 © 2003-2006 The openEHR Foundation]  email: info@openEHR.org web: !http://www.openEHR.org
    88 
    89 [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Assumed Types Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
    9082
    91833.2.1 Any Type
     
    541533
    542534[wiki:"Support Information Model Table of Contents" TOC] [wiki:"Support Information Model 2 Support Package" PREV] [wiki:"Support Information Model 4 Identification Package" NEXT]
    543