FIGIS: Time Series Tag Library
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v3.5 NT (http://www.xmlspy.com) by Maria Barbuzzi (FAO Headquarters) -->
<!-- ============================================================== -->
<!-- Project: Time Series Universal Import Export -->
<!-- Component: Time Series Tag Library-->
<!-- Original author: Yury Shatz -->
<!-- Organisation: FAO of the UN, FIDI, FIGIS project -->
<!-- Date: 07/09/2001 -->
<!-- Modifications: -->
<!-- Date Author Note -->
<!-- ======= ============ ===================================== -->
<!-- dd/mm/yy who? why? -->
<!-- dd/10/2001 Yury Shatz ver. 2-->
<!-- ============================================================== -->
<!--This DTD contains basic generic elements and structures used in various parts of the Time Series Universal Import Export DTD.-->
<!-- ============================================================== -->
<!--REM is a convenience entity called as an attribute when the developer needs to insert comments within the data structure.-->
<!ENTITY % REM "REM CDATA #IMPLIED">
<!-- ============================================================== -->
<!--REF is a convenience entity containing the common elements used in all REF elements.-->
<!ENTITY % REF "ID | FOREIGN_ID | NAME">
<!-- %REF is an entity that contains:
NAME contains a label together with attribute xml:lang that identifies the language of the name data.
ID contains an ID internal to the IMP/EXP system.
FOREIGN_ID contains an ID external to the IMP/EXP system together with a coding scheme name.
References are used to establish relationships between elements. For instance,
SOMEELEMENT_REF refers to SOMEELEMENT, having the same ID, FOREIGN_ID
or NAME. These three ways of identification are tried in this order:
ID
FOREIGN_ID
NAME
SOMEELEMENT matching these IDs must exist either in import XML
or in destination system.
-->
<!-- ============================================================== -->
<!--ID_LIST contains a list of internal ID's and/or FOREIGN_ID's.-->
<!ELEMENT ID_LIST (ID | FOREIGN_ID)+>
<!ATTLIST ID_LIST
%REM;
>
<!--ID contains an ID internal to the IMP/EXP system. -->
<!--FOREIGN_ID contains an ID external to the IMP/EXP system together with a coding scheme name. -->
<!-- Example:
<ID_LIST>
<ID>Species799XXXXXXX005</ID>
<FOREIGN_ID ID_SCHEME="Fishstat">GQXD</FOREIGN_ID>
</ID_LIST> -->
<!-- ============================================================== -->
<!--Each instance of ID holds one ID value internal to the import tool.-->
<!ELEMENT ID (#PCDATA)>
<!ATTLIST ID
%REM;
>
<!-- Example:
<ID>Species799XXXXXXX005</ID> -->
<!-- ============================================================== -->
<!--Each instance of FOREIGN_ID holds one foreign ID value together with attribute ID_SCHEME that identifies the foreign ID system.-->
<!ELEMENT FOREIGN_ID (#PCDATA)>
<!ATTLIST FOREIGN_ID
ID_SCHEME CDATA #REQUIRED
%REM;
>
<!-- Example:
<FOREIGN_ID ID_SCHEME="Fishstat">GQXD</FOREIGN_ID> -->
<!-- ============================================================== -->
<!--NAME_LIST contains a set of label NAMEs.-->
<!ELEMENT NAME_LIST (NAME)+>
<!ATTLIST NAME_LIST
%REM;
>
<!--NAME contains a label together with attribute xml:lang that identifies the language of the name data.-->
<!-- Example:
<NAME_LIST>
<NAME xml:lang="en">Seaweeds nei</NAME>
<NAME xml:lang="fr">Algues nca</NAME>
<NAME xml:lang="es">Algas nep</NAME>
</NAME_LIST> -->
<!-- ============================================================== -->
<!--NAME contains a label together with attribute xml:lang that identifies the language of the name data.-->
<!ELEMENT NAME (#PCDATA)>
<!ATTLIST NAME
xml:lang CDATA #IMPLIED
%REM;
>
<!-- xml:lang identifies the language of the name data.-->
<!-- Example:
<NAME xml:lang="en">Seaweeds nei</NAME> -->
<!-- ============================================================== -->
<!--OBJ_TYPE_REF contains the NAME(s), internal ID(s) and FOREIGN_ID(s)
for an object class to which an object belongs. Object type must either be defined
as OBJ_TYPE element or exist in destination system -->
<!ELEMENT OBJ_TYPE_REF (%REF;)+>
<!ATTLIST OBJ_TYPE_REF
%REM;
>
<!--%REF is ID|NAME|FOREIGN_ID needed to identify Object Type -->
<!-- Example:
<OBJ_TYPE_REF>
<NAME>Species</NAME>
<ID>SPE</ID>
<FOREIGN_ID ID_SCHEME="Fishstat">34</FOREIGN_ID>
<FOREIGN_ID ID_SCHEME="Figis">31005</FOREIGN_ID>
</OBJ_TYPE_REF> -->
<!-- ============================================================== -->
<!--HIER_REF identifies a hierarchy to which another element refers,
using NAME(s), internal ID(s) and FOREIGN_ID(s).
Hierarchy must either be defined as HIERARCHY element or exist in destination system
-->
<!ELEMENT HIER_REF (%REF;)+>
<!ATTLIST HIER_REF
%REM;
>
<!--%REF is ID|NAME|FOREIGN_ID needed to identify Hierarchy -->
<!-- Example:
<HIER_REF>
<ID>IsscaapHier</ID>
</HIER_REF>
-->
<!-- ============================================================== -->
<!--REL_REF identifies a relation class to which another element refers
using NAME(s), internal ID(s) and FOREIGN_ID(s).
relation class must either be defined as REL element or exist in destination system
-->
<!ELEMENT REL_REF (%REF;)+>
<!ATTLIST REL_REF
%REM;
>
<!--%REF is ID|NAME|FOREIGN_ID needed to identify relation -->
<!-- Example:
<REL_REF>
<ID>SpeciesInIsscaapGroup</ID>
<FOREIGN_ID ID_SCHEME="figis">32001</FOREIGN_ID>
</REL_REF>
-->
<!-- ============================================================== -->
<!--UNIT_REF identifies a measurement unit to which another element refers
using NAME(s), internal ID(s) and FOREIGN_ID(s).
Unit must either be defined as UNIT element or exist in destination system-->
<!ELEMENT UNIT_REF (%REF;)+>
<!ATTLIST UNIT_REF
%REM;
>
<!--%REF is ID|NAME|FOREIGN_ID needed to identify relation -->
<!-- Example:
<UNIT_REF>
<ID>mt</ID>
</UNIT_REF>
-->
<!-- ============================================================== -->
<!--ATT_REF identifies an attribute to which another element refers,
using NAME(s), internal ID(s) and FOREIGN_ID(s). Attribute must be either
defined with ATT element ort exist in the destination system.-->
<!ELEMENT ATT_REF (%REF;)+>
<!ATTLIST ATT_REF
%REM;
>
<!--%REF is ID|NAME|FOREIGN_ID needed to identify relation -->
<!-- Example:
<ATT_REF>
<FOREIGN_ID ID_SCHEME="figis">13</FOREIGN_ID>
<NAME xml:lang="en">3-alpha code</NAME>
</ATT_REF>
-->
<!-- ============================================================== -->
<!--FORMAT contains the internal ID or NAME of the format in which a piece of data is written. Attribute STRING contains a string that describes the data format for output. Syntax of this string is to be developed.
In fact, it may be system-dependent.
-->
<!ELEMENT FORMAT (ID | NAME)>
<!ATTLIST FORMAT
STRING CDATA #IMPLIED
DEFAULT (yes | no) #REQUIRED
%REM;
>
<!--ID contains an ID internal to the IMP/EXP system. -->
<!--NAME contains a label together with attribute xml:lang that identifies the language of the name data.-->
<!--STRING contains a string that describes the data format for output.-->
<!--DEFAULT declares the format instance to be the default for the object in which it is contained.-->
<!-- Example:
-->
<!-- ============================================================== -->
<!--VALUE contains a data value: attribute or time series value.-->
<!ELEMENT VALUE (#PCDATA)>
<!ATTLIST VALUE
%REM;
>
<!-- Example:
<VALUE>5</VALUE>
-->
<!-- ============================================================== -->
<!--ATT_VAL contains an attribute value together with a reference to the attribute.
Reference created using an ID or FOREIGN_ID-->
<!ELEMENT ATT_VAL ((ID | FOREIGN_ID), VALUE)>
<!ATTLIST ATT_VAL
xml:lang CDATA #IMPLIED
%REM;
>
<!--ID contains an ID internal to the IMP/EXP system. -->
<!--FOREIGN_ID contains an ID external to the IMP/EXP system together with a coding scheme name. -->
<!--VALUE contains a metadata value.-->
<!-- Example:
<ATT_VAL>
<ID>ScientificName</ID>
<VALUE>Algae</VALUE>
</ATT_VAL>
-->
<!-- ============================================================== -->
<!--OBJ_REF identifies an object to which another element refers,
using NAME(s), internal ID(s), FOREIGN_ID(s) and ATT_VALs. Object must be either
defined with OBJ element or exist in the destination system.
IDs, names, attribute values are used for object identification in
following order:
ID
FOREIGN_ID
ATT_VAL
NAME
-->
<!ELEMENT OBJ_REF (%REF; | OBJ_TYPE_REF | ATT_VAL)+>
<!ATTLIST OBJ_REF
%REM;
>
<!--%REF is ID|NAME|FOREIGN_ID needed to identify relation -->
<!--OBJ_TYPE_REF refers to object type. It may be necessary to include
OBJ_TYPE_REF if several objects of different types may have the same ID or
FOREIGN_ID. In this situation system should match only
objects of correct type.
ATT_VAL is additional type of identification. If neither ID nor
FOREIGN_ID is known, object is matched using ATT_VAL.-->
<!-- Example:
<OBJ_REF>
<ID>SpeciesABC001</ID>
<OBJ_TYPE_REF><ID>Species</ID></OBJ_TYPE_REF>
<ATT_VAL><ID>Code3Alpha</ID><VALUE>ABC</VALUE></ATT_VAL>
</OBJ_REF>
-->
<!-- ============================================================== -->
<!-- RELATED_TYPES is a reference to the object type on the other end of the relationship.-->
<!ELEMENT RELATED_TYPES (OBJ_TYPE_REF)+>
<!ATTLIST RELATED_TYPES
%REM;
>
<!--OBJ_TYPE_REF contains the references to the related object types, NAME(s), internal ID(s) and FOREIGN_ID(s).-->
<!-- Example:
<RELATED_TYPES>
<OBJ_TYPE_REF><ID>ISSCAAPGroup</ID></OBJ_TYPE_REF>
</RELATED_TYPES>
-->
<!-- ============================================================== -->
<!--This is the end of the Time Series Universal Import Export Common Library Content DTD.-->
Prepared by Robin Cover for The XML Cover Pages archive.

