FHIR: Added resourceType to DomainResource. Updated Resource to not extend Element. Updated primitive types so that they are automatically generated.

This commit is contained in:
Meir Gottlieb
2015-07-01 07:37:59 -06:00
parent 6a6afcb2ea
commit 2e726b1dca
+51 -70
View File
@@ -2,82 +2,47 @@
// Project: http://www.hl7.org/fhir/2015May/index.html
// Definitions by: Artifact Health <www.artifacthealth.com>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
declare module fhir {
/**
* A signed 32-bit integer (for larger values, use decimal)
*/
type integer = number;
/**
* Rational numbers that have a decimal representation. See below about the precision of the number
*/
type decimal = number;
/**
* A Uniform Resource Identifier Reference (RFC 3986). Note: URIs are case sensitive.
*/
type uri = string;
/**
* A stream of bytes, base64 encoded (RFC 4648)
*/
type base64Binary = string;
/**
* An instant in time - known at least to the second and always includes a time zone
*/
type instant = string;
/**
* A date, or partial date (e.g. just year or year + month) as used in human communication. There is no time zone.
* Dates SHALL be valid dates
*/
type date = string;
/**
* A date, date-time or partial date (e.g. just year or year + month) as used in human communication. If hours and
* minutes are specified, a time zone SHALL be populated. Seconds must be provided due to schema type constraints but
* may be zero-filled and may be ignored. Dates SHALL be valid dates. The time "24:00" is not allowed
*/
type dateTime = string;
/**
* A time during the day, with no date specified (can be converted to a Duration since midnight). Seconds must be
* provided due to schema type constraints but may be zero-filled and may be ignored. The time "24:00" is not allowed,
* and neither is a time zone
*/
type time = string;
/**
* Indicates that the value is taken from a set of controlled strings defined elsewhere (see Using codes for further
* discussion). Technically, a code is restricted to string which has at least one character and no leading or trailing
* whitespace, and where there is no whitespace other than single spaces in the contents
*/
type code = string;
/**
* An OID represented as a URI (RFC 3001). e.g. urn:oid:1.2.3.4.5
*/
type oid = uri;
/**
* Any combination of upper or lower case ASCII letters ('A'..'Z', and 'a'..'z', numerals ('0'..'9'), '-' and '.', with
* a length limit of 64 characters. (This might be an integer, an un-prefixed OID, UUID or any other identifier pattern
* that meets these constraints.)
* Any combination of lowercase letters, numerals, "-" and ".", with a length limit of 36 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Systems SHALL send ids as lower-case but SHOULD interpret them case-insensitively.
*/
type id = string;
/**
* Any non-negative integer (e.g. >= 0)
* String of characters used to identify a name or a resource
*/
type unsignedInt = integer;
type uri = string;
/**
* Any positive integer (e.g. > 0)
* A whole number
*/
type positiveInt = integer;
type integer = number;
/**
* A rational number with implicit precision
*/
type decimal = number;
/**
* A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.
*/
type dateTime = string;
/**
* A date, or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.
*/
type date = string;
/**
* An instant in time - known at least to the second
*/
type instant = string;
/**
* A time during the day, with no date specified
*/
type time = string;
/**
* A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents
*/
type code = string;
/**
* A stream of bytes
*/
type base64Binary = string;
/**
* A reference to a code defined by a terminology system
*/
@@ -116,6 +81,10 @@ declare module fhir {
*/
text?: string;
}
/**
* An integer with a value that is not negative (e.g. >= 0)
*/
type unsignedInt = number;
/**
* Content in a format defined elsewhere
*/
@@ -1148,7 +1117,7 @@ declare module fhir {
/**
* Base Resource
*/
interface Resource extends Element {
interface Resource {
/**
* Logical id of this artefact
*/
@@ -1183,6 +1152,10 @@ declare module fhir {
* A resource with narrative, extensions, and contained resources
*/
interface DomainResource extends Resource {
/**
* The type of the resource.
*/
resourceType?: code;
/**
* Text summary of the resource, for human interpretation
*/
@@ -2558,6 +2531,10 @@ declare module fhir {
*/
item?: Reference[];
}
/**
* An integer with a value that is positive (e.g. >0)
*/
type positiveInt = number;
/**
* A series of measurements taken by a device
*/
@@ -3918,6 +3895,10 @@ declare module fhir {
*/
item?: DiagnosticOrderItem[];
}
/**
* An oid represented as a URI
*/
type oid = string;
/**
* Each study has one or more series of instances
*/
@@ -10815,4 +10796,4 @@ declare module fhir {
*/
tag?: Coding[];
}
}
}