/*
 * Copyright (c) 1996 Gunther Schadow.  All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

:- module(protogen, []).
:- package(protogen, '').

%
% MANAGEMENT DATA
%
% table numbers are hardcoded in gen/mkc-cde.pl do not change them here!
%
table(9995, "message type", derived).
table(9996, "event type", derived).
table(9997, "unique message id", derived).
table(9999, "segment type", derived).
table(9998, "data type", derived).

%
% COMMON DATATYPES
%

data_type(dt, "date", 8).
data_type(tm, "time", 6).
data_type(ts, "time stamp", 19).

data_type(st, "string", '').
data_type(id, "coded value", '').

data_type(nm, "numeric", '').
data_type(si, "set id", 4).

data_type(pn, "person name", 48).
data_type(cq, "composite quantity/units", '').

data_type(zm, "message id and event code", '').

ctyp_imp(pn,
	[[st,'family name'],
	[st,'given name'],
	[st,'middle initial or name'],
	[st,suffix],
	[st,prefix],
	[st,degree]]).

ctyp_imp(cq,
	[[nm,'quantity'],
	[id,'units']]).

ctyp_imp(zm,
	[[code(9995),'message id'],
	[code(9996),'event type']]).
