ISO/TS 19103:2005
(Main)Geographic information — Conceptual schema language
Geographic information — Conceptual schema language
ISO TS 19103:2005 provides rules and guidelines for the use of a conceptual schema language within the ISO geographic information standards. The chosen conceptual schema language is the Unified Modeling Language (UML). ISO TS 19103:2005 provides a profile of UML for use with geographic information. In addition, it provides guidelines on how UML should be used to create standardized geographic information and service models.
Information géographique — Langage de schéma conceptuel
Geografske informacije - Jezik za konceptualno shemo
General Information
Relations
Standards Content (Sample)
TECHNICAL ISO/TS
SPECIFICATION 19103
First edition
2005-07-15
Geographic information — Conceptual
schema language
Information géographique — Schéma de language conceptuel
Reference number
ISO/TS 19103:2005(E)
©
ISO 2005
---------------------- Page: 1 ----------------------
ISO/TS 19103:2005(E)
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but
shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In
downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat
accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation
parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In
the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.
© ISO 2005
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO 2005 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/TS 19103:2005(E)
Contents Page
Foreword. iv
Introduction . v
1 Scope . 1
2 Conformance. 1
3 Normative references . 1
4 Terms, definitions and abbreviations. 1
4.1 ISO/TS 19103 terms . 1
4.2 UML terms . 3
4.3 Abbreviations . 7
5 Organization . 7
6 The ISO/TS 19103 UML Profile. 8
6.1 Introduction . 8
6.2 General usage of UML. 8
6.3 Classes . 9
6.4 Attributes . 9
6.5 Data types. 9
6.6 Operations . 28
6.7 Relationships and associations . 28
6.8 Stereotypes and tagged values. 29
6.9 Optional, conditional and mandatory attributes and associations . 29
6.10 Naming and name spaces. 30
6.11 Packages . 31
6.12 Notes . 32
6.13 Constraints . 32
6.14 Documentation of models. 32
Annex A (normative) Abstract test suite. 34
Annex B (informative) On conceptual schema languages. 35
Annex C (informative) Modeling guidelines. 45
Annex D (informative) Introduction to UML. 54
Bibliography . 67
© ISO 2005 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/TS 19103:2005(E)
Foreword
ISO (the International Organization for Standardization) is a worldwide federation of national standards bodies
(ISO member bodies). The work of preparing International Standards is normally carried out through ISO
technical committees. Each member body interested in a subject for which a technical committee has been
established has the right to be represented on that committee. International organizations, governmental and
non-governmental, in liaison with ISO, also take part in the work. ISO collaborates closely with the
International Electrotechnical Commission (IEC) on all matters of electrotechnical standardization.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
The main task of technical committees is to prepare International Standards. Draft International Standards
adopted by the technical committees are circulated to the member bodies for voting. Publication as an
International Standard requires approval by at least 75 % of the member bodies casting a vote.
In other circumstances, particularly when there is an urgent market requirement for such documents, a
technical committee may decide to publish other types of normative document:
an ISO Publicly Available Specification (ISO/PAS) represents an agreement between technical experts in
an ISO working group and is accepted for publication if it is approved by more than 50 % of the members
of the parent committee casting a vote;
an ISO Technical Specification (ISO/TS) represents an agreement between the members of a technical
committee and is accepted for publication if it is approved by 2/3 of the members of the committee casting
a vote.
An ISO/PAS or ISO/TS is reviewed after three years in order to decide whether it will be confirmed for a
further three years, revised to become an International Standard, or withdrawn. If the ISO/PAS or ISO/TS is
confirmed, it is reviewed again after a further three years, at which time it must either be transformed into an
International Standard or be withdrawn.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent
rights. ISO shall not be held responsible for identifying any or all such patent rights.
IISO/TS 19103 was prepared by Technical Committee ISO/TC 211, Geographic information/Geomatics.
iv © ISO 2005 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/TS 19103:2005(E)
Introduction
This Technical Specification of the ISO geographic information standards is concerned with the adoption and
use of a conceptual schema language (CSL) for developing computer-interpretable models, or schemas, of
geographic information. Standardization of geographic information requires the use of a formal CSL to specify
unambiguous schemas that can serve as a basis for data interchange and the definition of interoperable
services. An important goal of the ISO geographic information standards is to create a framework in which
data interchange and service interoperability can be realized across multiple implementation environments.
The adoption and consistent use of a CSL to specify geographic information is of fundamental importance in
achieving this goal.
There are two aspects to this Technical Specification. First, a CSL must be selected that meets the
requirements for rigorous representation of geographic information. This Technical Specification identifies the
combination of the Unified Modeling Language (UML) static structure diagram with its associated Object
Constraint Language (OCL) and a set of basic type definitions as the conceptual schema language for
specification of geographic information. Secondly, this Technical Specification provides guidelines on how
UML should be used to create geographic information and service models that are a basis for achieving the
goal of interoperability.
One goal of the ISO geographic information standards using UML models is that they will provide a basis for
mapping to encoding schemas as defined in ISO 19118, as well as a basis for creating implementation
specifications for implementation profiles for various environments.
© ISO 2005 – All rights reserved v
---------------------- Page: 5 ----------------------
TECHNICAL SPECIFICATION ISO/TS 19103:2005(E)
Geographic information — Conceptual schema language
1 Scope
This Technical Specification provides rules and guidelines for the use of a conceptual schema language within
the ISO geographic information standards. The chosen conceptual schema language is the Unified Modeling
Language (UML).
This Technical Specification provides a profile of the Unified Modeling Language (UML) for use with
geographic information. In addition, it provides guidelines on how UML should be used to create standardized
geographic information and service models.
2 Conformance
Any conceptual schema written for a specification, including a profile or functional standard, that claims
conformance with this Technical Specification shall pass all of the requirements described in the abstract test
suite in Annex A. Non-UML schemas shall be considered conformant if there is a well-defined mapping from a
model in the source language into an equivalent model in UML and that this model in UML is conformant.
3 Normative references
The following referenced documents are indispensable for the application of this document. For dated
references, only the edition cited applies. For undated references, the latest edition of the referenced
document (including any amendments) applies.
ISO 19101:2002, Geographic Information — Reference model
ISO/IEC 19501:2005, Information technology — Open Distributed Processing — Unified Modeling Language
(UML) Version 1.4.2
4 Terms, definitions and abbreviations
4.1 ISO/TS 19103 terms
For the purposes of this document, the following terms and definitions apply.
4.1.1
application
manipulation and processing of data in support of user requirements
[ISO 19101]
4.1.2
application schema
conceptual schema for data required by one or more applications
[ISO 19101]
© ISO 2005 – All rights reserved 1
---------------------- Page: 6 ----------------------
ISO/TS 19103:2005(E)
4.1.3
conceptual model
model that defines concepts of a universe of discourse
[ISO 19101]
4.1.4
conceptual schema
formal description of a conceptual model
[ISO 19101]
4.1.5
data type
specification of a value domain with operations allowed on values in this domain
EXAMPLE Integer, Real, Boolean, String, Date and SG Point (conversion of data into a series of codes).
NOTE Data types include primitive predefined types and user-definable types.
4.1.6
domain
well-defined set
NOTE Domains are used to define the domain set and range set of attributes, operators and functions.
4.1.7
feature
abstraction of real world phenomena
[ISO 19101]
NOTE 1 A feature may occur as a type or an instance. Feature type or feature instance should be used when only one
is meant.
[8]
NOTE 2 In UML a feature is a property, such as operation or attribute, which is encapsulated as part of a list within a
classifier, such as interface, class or data type.
4.1.8
feature association
relationship that links instances of one feature type with instances of the same or a different feature type
[ISO 19109]
NOTE 1 A feature association may occur as a type or an instance. Feature association type or feature association
instance is used when only one is meant.
NOTE 2 Feature associations include aggregation of features.
4.1.9
feature attribute
characteristic of a feature
[ISO 19101]
NOTE 1 A feature attribute has a name, a data type, and a value domain associated to it. A feature attribute for a
feature instance also has an attribute value taken from the value domain.
NOTE 2 A feature attribute may occur as a type or an instance. Feature attribute type or feature attribute instance
should be used when only one is meant.
2 © ISO 2005 – All rights reserved
---------------------- Page: 7 ----------------------
ISO/TS 19103:2005(E)
4.1.10
feature operation
operation that every instance of a feature type may perform
[ISO 19110]
EXAMPLE 1 An operation upon a “dam” is to raise the dam. The result of this operation is to raise the level of water in
a reservoir.
EXAMPLE 2 An operation by a “dam” might be to block vessels from navigating along a “watercourse”.
NOTE Feature operations provide a basis for feature type definition.
4.1.11
metadata
data about data
[ISO 19115]
4.1.12
metadata element
discrete unit of metadata
[ISO 19115]
NOTE 1 Metadata elements are unique within a metadata entity.
NOTE 2 Equivalent to an attribute in UML terminology.
4.1.13
schema
formal description of a model
[ISO 19101]
4.1.14
service
distinct part of the functionality that is provided by an entity through interfaces
[ISO/IEC TR 14252]
4.1.15
value domain
set of accepted values
EXAMPLE The range 3-28, all integers, any ASCII character, enumeration of all accepted values (green, blue, white).
4.2 UML terms
The following are UML terms that are adapted from ISO/IEC 19501.
4.2.1
actor
coherent set of roles that users of use cases play when interacting with these use cases
NOTE An actor may be considered to play a separate role with regard to each use case with which it communicates.
© ISO 2005 – All rights reserved 3
---------------------- Page: 8 ----------------------
ISO/TS 19103:2005(E)
4.2.2
aggregation
special form of association that specifies a whole-part relationship between the aggregate (whole) and a
component part
NOTE See composition.
4.2.3
association
semantic relationship between two or more classifiers that specifies connections among their instances
NOTE A binary association is an association among exactly two classifiers (including the possibility of an association
from a classifier to itself).
4.2.4
attribute
feature within a classifier that describes a range of values that instances of the classifier may hold
NOTE 1 An attribute is semantically equivalent to a composition association; however, the intent and usage is normally
different.
NOTE 2 “Feature” used in this definition is the UML meaning of the term and is not meant as defined in 4.1 of this
Technical Specification.
4.2.5
behaviour
observable effects of an operation or event, including its results
4.2.6
cardinality
number of elements in a set
NOTE Contrast: multiplicity.
4.2.7
class
description of a set of objects that share the same attributes, operations, methods, relationships and
semantics
NOTE A class may use a set of interfaces to specify collections of operations it provides to its environment. See:
interface.
4.2.8
classifier
mechanism that describes behavioural and structural features
NOTE Classifiers include interfaces, classes, datatypes, and components.
4.2.9
component
modular, deployable, and replaceable part of a system that encapsulates implementation and exposes a set of
interfaces
NOTE A component represents a physical piece of implementation of a system, including software code (source,
binary or executable) or equivalents such as scripts or command files.
4.2.10
composition
form of aggregation which requires that a part instance be included in at most one composite at a time, and
that the composite object is responsible for the creation and destruction of the parts
4 © ISO 2005 – All rights reserved
---------------------- Page: 9 ----------------------
ISO/TS 19103:2005(E)
NOTE Parts with non-fixed multiplicity may be created after the composite itself, but once created they live and die
with it (i.e. they share lifetimes). Such parts can also be explicitly removed before the death of the composite. Composition
may be recursive. Synonym: composite aggregation.
4.2.11
constraint
semantic condition or restriction
NOTE Certain constraints are predefined in the UML, others may be user defined. Constraints are one of three
extensibility mechanisms in UML. See: tagged value, stereotype.
4.2.12
dependency
relationship between two modeling elements, in which a change to one modeling element (the independent
element) will affect the other modeling element (the dependent element)
4.2.13
generalization
taxonomic relationship between a more general element and a more specific element that is fully consistent
with the more general element and contains additional information
NOTE An instance of the more specific element may be used where the more general element is allowed. See:
inheritance.
4.2.14
inheritance
mechanism by which more specific elements incorporate structure and behaviour of more general elements
related by behaviour
NOTE See generalization.
4.2.15
instance
entity that has unique identity, a set of operations can be applied to it, and state that stores the effects of the
operations
NOTE See: object.
4.2.16
interface
named set of operations that characterize the behaviour of an element
4.2.17
metamodel
model that defines the language for expressing a model
4.2.18
method
implementation of an operation
NOTE It specifies the algorithm or procedure associated with an operation.
4.2.19
multiplicity
specification of the range of allowable cardinalities that a set may assume
NOTE Multiplicity specifications may be given for roles within associations, parts within composites, repetitions and
other purposes. Essentially a multiplicity is a (possibly infinite) subset of the non-negative integers. Contrast: cardinality.
© ISO 2005 – All rights reserved 5
---------------------- Page: 10 ----------------------
ISO/TS 19103:2005(E)
4.2.20
object
entity with a well-defined boundary and identity that encapsulates state and behaviour
NOTE State is represented by attributes and relationships, behaviour is represented by operations, methods and
state machines. An object is an instance of a class. See: class, instance.
4.2.21
operation
service that can be requested from an object to affect behaviour
NOTE 1 An operation has a signature, which may restrict the actual parameters that are possible.
NOTE 2 Definition from UML Reference Manual: A specification of a transformation or query that an object may be
called to execute.
NOTE 3 An operation has a name and a list of parameters. A method is a procedure that implements an operation. It
has an algorithm or procedure description.
4.2.22
package
general purpose mechanism for organizing elements into groups
NOTE Packages may be nested within other packages. Both model elements and diagrams may appear in a
package.
4.2.23
refinement
relationship that represents a fuller specification of something that has already been specified at a certain
level of detail
NOTE For example, a design class is a refinement of an analysis class
4.2.24
relationship
semantic connection among model elements
NOTE Kinds of relationships include association, generalization, metarelationship, flow and several kinds grouped
under dependency.
4.2.25
specification
declarative description of what something is or does
NOTE Contrast: implementation.
4.2.26
stereotype
new type of modeling element that extends the semantics of the metamodel
NOTE Stereotypes must be based on certain existing types or classes in the metamodel. Stereotypes may extend
the semantics, but not the structure of pre-existing types and classes. Certain stereotypes are predefined in the UML,
others may be user defined. Stereotypes are one of three extensibility mechanisms in UML. The others are constraint and
tagged value.
4.2.27
tagged value
explicit definition of a property as a name-value pair
NOTE In a tagged value, the name is referred as the tag. Certain tags are predefined in the UML; others may be user
defined. Tagged values are one of three extensibility mechanisms in UML. The others are constraint and stereotype.
6 © ISO 2005 – All rights reserved
---------------------- Page: 11 ----------------------
ISO/TS 19103:2005(E)
4.2.28
type
stereotyped class that specifies a domain of objects together with the operations applicable to the objects,
without defining the physical implementation of those objects
NOTE A type may have attributes and associations.
4.2.29
value
element of a type domain
NOTE 1 A value may consider a possible state of an object within a class or type (domain).
NOTE 2 A data value is an instance of a data type, a value without identity.
4.3 Abbreviations
API Application Programming Interface
CASE Computer Aided Software Engineering
CORBA Common Object Request Broker Architecture
CSL Conceptual schema language
CSMF Conceptual Schema Modeling Facility
DCOM/OLE Distributed Compound Object Model/Object Linking and Embedding
GFM General Feature Model
OCL Object Constraint Language
ODMG Object Database Management Group
OMG Object Management Group
ODP Open Distributed Processing
ODBC Open Database Connection
SRS Spatial Reference System
UML Unified Modeling Language
url Uniform Resource Locator
XML Extended Markup Language
XMI XML Metamodel Interchange
5 Organization
This Technical Specification contains a UML Profile which provides modeling guidelines for how to use UML
for modeling compliant with the ISO geographic information standards.
The main technical content of this Technical Specification is found in Clause 6. An introduction to the general
usage of UML is given in 6.1 and 6.2. The description of classes and attributes in 6.3 and 6.4 is based on
general rules for UML. Data types described in 6.5 are developed for this Technical Specification, as standard
UML does not prescribe the use of specific data types. More information on the necessary precision level of
UML models required by this Technical Specification is provided in 6.6, 6.7 and 6.8. The conventions for
defining optional attributes and associations are described in 6.9. Naming rules are described in 6.10.
© ISO 2005 – All rights reserved 7
---------------------- Page: 12 ----------------------
ISO/TS 19103:2005(E)
Annex A describes an abstract test suite for checking that UML models are made according to the rules of this
Technical Specification.
An introduction to conceptual schema languages can be found in Annex B, and a set of modeling guidelines
for both information modeling and service modeling can be found in Annex C. The general UML as defined in
ISO/IEC 19501 is briefly described in Annex D.
6 The ISO/TS 19103 UML Profile
6.1 Introduction
This clause provides rules and guidelines on the use of UML within the field of geographic information. It
defines specific aspects for the use of UML compliant with the ISO geographic information standards. It is
based on general UML as defined in ISO/IEC 19501 (Annex D). Annex D follows the same structure as this
clause, to make it easy to refer to the relevant standard UML concepts.
The subclauses are structured as follows:
General usage of UML
Classes
Attributes
Data types
Operations
Relationships and associations
Stereotypes and tagged values
Optional, conditional and mandatory attributes and associations
Naming and name spaces
Packages
Notes
Constraints
Documentation of models
6.2 General usage of UML
UML (The Unified Modeling Language) shall be used in a manner that is consistent with ISO/IEC 19501.
[1] [2]
NOTE Books, such as “UML User Guide” and “UML Reference Manual” contain further information. The book
[4]
“UML Distilled” is a shorter introductory text.
All normative class models shall contain complete definitions of attributes, associations, operations and
appropriate data type definitions. Other kinds of UML diagrams may also be used as normative models. It is
the need for this completeness that makes it necessary to define this UML profile, as UML in general can be
used on various levels of precision and completeness.
8 © ISO 2005 – All rights reserved
---------------------- Page: 13 ----------------------
ISO/TS 19103:2005(E)
6.3 Classes
A class according to this Technical Specification is normally viewed as a specification and not as an
implementation. Attributes are considered abstract and do not have to be directly implemented (i.e. as fields in
a record or instance variables in an object). This is not in conflict with the process of encoding as described in
ISO 19118, as this describes an external representation that does not have to be equivalent to the internal
representation.
For this reason, conceptual schemas adhering to this profile of UML shall stereotype all classifiers as
<> unless they specifically intend to specify internal representation.
NOTE Classifiers specified as <> (lacking identity) are not usually assumed to be types in UML, but may
be assumed to be abstract for conceptual schemas adhering to this profile of UML unless the schema in which they are
defined specifically states otherwise.
For each class defined according to this Technical Specification, the set of attributes defined with this class,
together with the sets of attributes of classes that are reachable directly or indirectly via associations, shall be
sufficient to fully support the implementation of each operation defined for this particular class.
Use of multiple inheritance is an issue in many implementation environments and can cause problems if
handled improperly in those environments. For this reason, the use of multiple inheritance should be
minimized or avoided unless it is a fundamental part of the semantics of the type hierarchy. If used, the
schema adhering to this UML profile shall not require that the implementation classes realizing the standards
specified types replicate the inheritance model of the types.
6.4 Attributes
Attributes are used according to standard UML (see D.4).
6.5 Data types
6.5.1 General considerations
The classes and templates (parameterized types) defined in this clause are those that are usually defined by
the development environment’s data definition language. Each of these types can be represented in a variety
of logically equivalent forms. The ones presented here are not meant to restrict the usage of other equivalent
forms native to the chosen development environment. ISO/IEC 11404 presents an equivalent definition for
most of the types and templates presented here.
The basic data types have been grouped into three categories, as shown in Figure 1:
a) Primitive types: Fundamental types for representing values, examples are CharacterString, Integer,
Boolean, Date, Time, etc.
b) Implementation and collection types: Types for implementation and representation structures, examples
are Names and Records, and types for representing multiple occurrences of other types, examples are
Set, Bag and Sequence.
c) Derived types: Measure types and units of measurement.
The basic types are defined as abstract types, class name in italic, and appropriate representations will be
defined by implementation and encoding mappings for the various subtypes.
The repertoire of basic data types is described in 6.5.2 – 6.5.7.
© ISO 2005 – All rights reserved 9
---------------------- Page: 14 ----------------------
ISO/TS 19103:2005(E)
Figure 1 — The basic data types
10 © ISO 200
...
SLOVENSKI STANDARD
SIST-TS ISO/TS 19103:2009
01-maj-2009
Geografske informacije - Jezik za konceptualno shemo
Geographic information - Conceptual schema language
Information géographique - Schéma de langage conceptuel
Ta slovenski standard je istoveten z: ISO/TS 19103:2005
ICS:
35.240.70 Uporabniške rešitve IT v IT applications in science
znanosti
SIST-TS ISO/TS 19103:2009 en
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.
---------------------- Page: 1 ----------------------
SIST-TS ISO/TS 19103:2009
---------------------- Page: 2 ----------------------
SIST-TS ISO/TS 19103:2009
TECHNICAL ISO/TS
SPECIFICATION 19103
First edition
2005-07-15
Geographic information — Conceptual
schema language
Information géographique — Schéma de language conceptuel
Reference number
ISO/TS 19103:2005(E)
©
ISO 2005
---------------------- Page: 3 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but
shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In
downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat
accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation
parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In
the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.
© ISO 2005
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO 2005 – All rights reserved
---------------------- Page: 4 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
Contents Page
Foreword. iv
Introduction . v
1 Scope . 1
2 Conformance. 1
3 Normative references . 1
4 Terms, definitions and abbreviations. 1
4.1 ISO/TS 19103 terms . 1
4.2 UML terms . 3
4.3 Abbreviations . 7
5 Organization . 7
6 The ISO/TS 19103 UML Profile. 8
6.1 Introduction . 8
6.2 General usage of UML. 8
6.3 Classes . 9
6.4 Attributes . 9
6.5 Data types. 9
6.6 Operations . 28
6.7 Relationships and associations . 28
6.8 Stereotypes and tagged values. 29
6.9 Optional, conditional and mandatory attributes and associations . 29
6.10 Naming and name spaces. 30
6.11 Packages . 31
6.12 Notes . 32
6.13 Constraints . 32
6.14 Documentation of models. 32
Annex A (normative) Abstract test suite. 34
Annex B (informative) On conceptual schema languages. 35
Annex C (informative) Modeling guidelines. 45
Annex D (informative) Introduction to UML. 54
Bibliography . 67
© ISO 2005 – All rights reserved iii
---------------------- Page: 5 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
Foreword
ISO (the International Organization for Standardization) is a worldwide federation of national standards bodies
(ISO member bodies). The work of preparing International Standards is normally carried out through ISO
technical committees. Each member body interested in a subject for which a technical committee has been
established has the right to be represented on that committee. International organizations, governmental and
non-governmental, in liaison with ISO, also take part in the work. ISO collaborates closely with the
International Electrotechnical Commission (IEC) on all matters of electrotechnical standardization.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
The main task of technical committees is to prepare International Standards. Draft International Standards
adopted by the technical committees are circulated to the member bodies for voting. Publication as an
International Standard requires approval by at least 75 % of the member bodies casting a vote.
In other circumstances, particularly when there is an urgent market requirement for such documents, a
technical committee may decide to publish other types of normative document:
an ISO Publicly Available Specification (ISO/PAS) represents an agreement between technical experts in
an ISO working group and is accepted for publication if it is approved by more than 50 % of the members
of the parent committee casting a vote;
an ISO Technical Specification (ISO/TS) represents an agreement between the members of a technical
committee and is accepted for publication if it is approved by 2/3 of the members of the committee casting
a vote.
An ISO/PAS or ISO/TS is reviewed after three years in order to decide whether it will be confirmed for a
further three years, revised to become an International Standard, or withdrawn. If the ISO/PAS or ISO/TS is
confirmed, it is reviewed again after a further three years, at which time it must either be transformed into an
International Standard or be withdrawn.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent
rights. ISO shall not be held responsible for identifying any or all such patent rights.
IISO/TS 19103 was prepared by Technical Committee ISO/TC 211, Geographic information/Geomatics.
iv © ISO 2005 – All rights reserved
---------------------- Page: 6 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
Introduction
This Technical Specification of the ISO geographic information standards is concerned with the adoption and
use of a conceptual schema language (CSL) for developing computer-interpretable models, or schemas, of
geographic information. Standardization of geographic information requires the use of a formal CSL to specify
unambiguous schemas that can serve as a basis for data interchange and the definition of interoperable
services. An important goal of the ISO geographic information standards is to create a framework in which
data interchange and service interoperability can be realized across multiple implementation environments.
The adoption and consistent use of a CSL to specify geographic information is of fundamental importance in
achieving this goal.
There are two aspects to this Technical Specification. First, a CSL must be selected that meets the
requirements for rigorous representation of geographic information. This Technical Specification identifies the
combination of the Unified Modeling Language (UML) static structure diagram with its associated Object
Constraint Language (OCL) and a set of basic type definitions as the conceptual schema language for
specification of geographic information. Secondly, this Technical Specification provides guidelines on how
UML should be used to create geographic information and service models that are a basis for achieving the
goal of interoperability.
One goal of the ISO geographic information standards using UML models is that they will provide a basis for
mapping to encoding schemas as defined in ISO 19118, as well as a basis for creating implementation
specifications for implementation profiles for various environments.
© ISO 2005 – All rights reserved v
---------------------- Page: 7 ----------------------
SIST-TS ISO/TS 19103:2009
---------------------- Page: 8 ----------------------
SIST-TS ISO/TS 19103:2009
TECHNICAL SPECIFICATION ISO/TS 19103:2005(E)
Geographic information — Conceptual schema language
1 Scope
This Technical Specification provides rules and guidelines for the use of a conceptual schema language within
the ISO geographic information standards. The chosen conceptual schema language is the Unified Modeling
Language (UML).
This Technical Specification provides a profile of the Unified Modeling Language (UML) for use with
geographic information. In addition, it provides guidelines on how UML should be used to create standardized
geographic information and service models.
2 Conformance
Any conceptual schema written for a specification, including a profile or functional standard, that claims
conformance with this Technical Specification shall pass all of the requirements described in the abstract test
suite in Annex A. Non-UML schemas shall be considered conformant if there is a well-defined mapping from a
model in the source language into an equivalent model in UML and that this model in UML is conformant.
3 Normative references
The following referenced documents are indispensable for the application of this document. For dated
references, only the edition cited applies. For undated references, the latest edition of the referenced
document (including any amendments) applies.
ISO 19101:2002, Geographic Information — Reference model
ISO/IEC 19501:2005, Information technology — Open Distributed Processing — Unified Modeling Language
(UML) Version 1.4.2
4 Terms, definitions and abbreviations
4.1 ISO/TS 19103 terms
For the purposes of this document, the following terms and definitions apply.
4.1.1
application
manipulation and processing of data in support of user requirements
[ISO 19101]
4.1.2
application schema
conceptual schema for data required by one or more applications
[ISO 19101]
© ISO 2005 – All rights reserved 1
---------------------- Page: 9 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
4.1.3
conceptual model
model that defines concepts of a universe of discourse
[ISO 19101]
4.1.4
conceptual schema
formal description of a conceptual model
[ISO 19101]
4.1.5
data type
specification of a value domain with operations allowed on values in this domain
EXAMPLE Integer, Real, Boolean, String, Date and SG Point (conversion of data into a series of codes).
NOTE Data types include primitive predefined types and user-definable types.
4.1.6
domain
well-defined set
NOTE Domains are used to define the domain set and range set of attributes, operators and functions.
4.1.7
feature
abstraction of real world phenomena
[ISO 19101]
NOTE 1 A feature may occur as a type or an instance. Feature type or feature instance should be used when only one
is meant.
[8]
NOTE 2 In UML a feature is a property, such as operation or attribute, which is encapsulated as part of a list within a
classifier, such as interface, class or data type.
4.1.8
feature association
relationship that links instances of one feature type with instances of the same or a different feature type
[ISO 19109]
NOTE 1 A feature association may occur as a type or an instance. Feature association type or feature association
instance is used when only one is meant.
NOTE 2 Feature associations include aggregation of features.
4.1.9
feature attribute
characteristic of a feature
[ISO 19101]
NOTE 1 A feature attribute has a name, a data type, and a value domain associated to it. A feature attribute for a
feature instance also has an attribute value taken from the value domain.
NOTE 2 A feature attribute may occur as a type or an instance. Feature attribute type or feature attribute instance
should be used when only one is meant.
2 © ISO 2005 – All rights reserved
---------------------- Page: 10 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
4.1.10
feature operation
operation that every instance of a feature type may perform
[ISO 19110]
EXAMPLE 1 An operation upon a “dam” is to raise the dam. The result of this operation is to raise the level of water in
a reservoir.
EXAMPLE 2 An operation by a “dam” might be to block vessels from navigating along a “watercourse”.
NOTE Feature operations provide a basis for feature type definition.
4.1.11
metadata
data about data
[ISO 19115]
4.1.12
metadata element
discrete unit of metadata
[ISO 19115]
NOTE 1 Metadata elements are unique within a metadata entity.
NOTE 2 Equivalent to an attribute in UML terminology.
4.1.13
schema
formal description of a model
[ISO 19101]
4.1.14
service
distinct part of the functionality that is provided by an entity through interfaces
[ISO/IEC TR 14252]
4.1.15
value domain
set of accepted values
EXAMPLE The range 3-28, all integers, any ASCII character, enumeration of all accepted values (green, blue, white).
4.2 UML terms
The following are UML terms that are adapted from ISO/IEC 19501.
4.2.1
actor
coherent set of roles that users of use cases play when interacting with these use cases
NOTE An actor may be considered to play a separate role with regard to each use case with which it communicates.
© ISO 2005 – All rights reserved 3
---------------------- Page: 11 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
4.2.2
aggregation
special form of association that specifies a whole-part relationship between the aggregate (whole) and a
component part
NOTE See composition.
4.2.3
association
semantic relationship between two or more classifiers that specifies connections among their instances
NOTE A binary association is an association among exactly two classifiers (including the possibility of an association
from a classifier to itself).
4.2.4
attribute
feature within a classifier that describes a range of values that instances of the classifier may hold
NOTE 1 An attribute is semantically equivalent to a composition association; however, the intent and usage is normally
different.
NOTE 2 “Feature” used in this definition is the UML meaning of the term and is not meant as defined in 4.1 of this
Technical Specification.
4.2.5
behaviour
observable effects of an operation or event, including its results
4.2.6
cardinality
number of elements in a set
NOTE Contrast: multiplicity.
4.2.7
class
description of a set of objects that share the same attributes, operations, methods, relationships and
semantics
NOTE A class may use a set of interfaces to specify collections of operations it provides to its environment. See:
interface.
4.2.8
classifier
mechanism that describes behavioural and structural features
NOTE Classifiers include interfaces, classes, datatypes, and components.
4.2.9
component
modular, deployable, and replaceable part of a system that encapsulates implementation and exposes a set of
interfaces
NOTE A component represents a physical piece of implementation of a system, including software code (source,
binary or executable) or equivalents such as scripts or command files.
4.2.10
composition
form of aggregation which requires that a part instance be included in at most one composite at a time, and
that the composite object is responsible for the creation and destruction of the parts
4 © ISO 2005 – All rights reserved
---------------------- Page: 12 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
NOTE Parts with non-fixed multiplicity may be created after the composite itself, but once created they live and die
with it (i.e. they share lifetimes). Such parts can also be explicitly removed before the death of the composite. Composition
may be recursive. Synonym: composite aggregation.
4.2.11
constraint
semantic condition or restriction
NOTE Certain constraints are predefined in the UML, others may be user defined. Constraints are one of three
extensibility mechanisms in UML. See: tagged value, stereotype.
4.2.12
dependency
relationship between two modeling elements, in which a change to one modeling element (the independent
element) will affect the other modeling element (the dependent element)
4.2.13
generalization
taxonomic relationship between a more general element and a more specific element that is fully consistent
with the more general element and contains additional information
NOTE An instance of the more specific element may be used where the more general element is allowed. See:
inheritance.
4.2.14
inheritance
mechanism by which more specific elements incorporate structure and behaviour of more general elements
related by behaviour
NOTE See generalization.
4.2.15
instance
entity that has unique identity, a set of operations can be applied to it, and state that stores the effects of the
operations
NOTE See: object.
4.2.16
interface
named set of operations that characterize the behaviour of an element
4.2.17
metamodel
model that defines the language for expressing a model
4.2.18
method
implementation of an operation
NOTE It specifies the algorithm or procedure associated with an operation.
4.2.19
multiplicity
specification of the range of allowable cardinalities that a set may assume
NOTE Multiplicity specifications may be given for roles within associations, parts within composites, repetitions and
other purposes. Essentially a multiplicity is a (possibly infinite) subset of the non-negative integers. Contrast: cardinality.
© ISO 2005 – All rights reserved 5
---------------------- Page: 13 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
4.2.20
object
entity with a well-defined boundary and identity that encapsulates state and behaviour
NOTE State is represented by attributes and relationships, behaviour is represented by operations, methods and
state machines. An object is an instance of a class. See: class, instance.
4.2.21
operation
service that can be requested from an object to affect behaviour
NOTE 1 An operation has a signature, which may restrict the actual parameters that are possible.
NOTE 2 Definition from UML Reference Manual: A specification of a transformation or query that an object may be
called to execute.
NOTE 3 An operation has a name and a list of parameters. A method is a procedure that implements an operation. It
has an algorithm or procedure description.
4.2.22
package
general purpose mechanism for organizing elements into groups
NOTE Packages may be nested within other packages. Both model elements and diagrams may appear in a
package.
4.2.23
refinement
relationship that represents a fuller specification of something that has already been specified at a certain
level of detail
NOTE For example, a design class is a refinement of an analysis class
4.2.24
relationship
semantic connection among model elements
NOTE Kinds of relationships include association, generalization, metarelationship, flow and several kinds grouped
under dependency.
4.2.25
specification
declarative description of what something is or does
NOTE Contrast: implementation.
4.2.26
stereotype
new type of modeling element that extends the semantics of the metamodel
NOTE Stereotypes must be based on certain existing types or classes in the metamodel. Stereotypes may extend
the semantics, but not the structure of pre-existing types and classes. Certain stereotypes are predefined in the UML,
others may be user defined. Stereotypes are one of three extensibility mechanisms in UML. The others are constraint and
tagged value.
4.2.27
tagged value
explicit definition of a property as a name-value pair
NOTE In a tagged value, the name is referred as the tag. Certain tags are predefined in the UML; others may be user
defined. Tagged values are one of three extensibility mechanisms in UML. The others are constraint and stereotype.
6 © ISO 2005 – All rights reserved
---------------------- Page: 14 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
4.2.28
type
stereotyped class that specifies a domain of objects together with the operations applicable to the objects,
without defining the physical implementation of those objects
NOTE A type may have attributes and associations.
4.2.29
value
element of a type domain
NOTE 1 A value may consider a possible state of an object within a class or type (domain).
NOTE 2 A data value is an instance of a data type, a value without identity.
4.3 Abbreviations
API Application Programming Interface
CASE Computer Aided Software Engineering
CORBA Common Object Request Broker Architecture
CSL Conceptual schema language
CSMF Conceptual Schema Modeling Facility
DCOM/OLE Distributed Compound Object Model/Object Linking and Embedding
GFM General Feature Model
OCL Object Constraint Language
ODMG Object Database Management Group
OMG Object Management Group
ODP Open Distributed Processing
ODBC Open Database Connection
SRS Spatial Reference System
UML Unified Modeling Language
url Uniform Resource Locator
XML Extended Markup Language
XMI XML Metamodel Interchange
5 Organization
This Technical Specification contains a UML Profile which provides modeling guidelines for how to use UML
for modeling compliant with the ISO geographic information standards.
The main technical content of this Technical Specification is found in Clause 6. An introduction to the general
usage of UML is given in 6.1 and 6.2. The description of classes and attributes in 6.3 and 6.4 is based on
general rules for UML. Data types described in 6.5 are developed for this Technical Specification, as standard
UML does not prescribe the use of specific data types. More information on the necessary precision level of
UML models required by this Technical Specification is provided in 6.6, 6.7 and 6.8. The conventions for
defining optional attributes and associations are described in 6.9. Naming rules are described in 6.10.
© ISO 2005 – All rights reserved 7
---------------------- Page: 15 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
Annex A describes an abstract test suite for checking that UML models are made according to the rules of this
Technical Specification.
An introduction to conceptual schema languages can be found in Annex B, and a set of modeling guidelines
for both information modeling and service modeling can be found in Annex C. The general UML as defined in
ISO/IEC 19501 is briefly described in Annex D.
6 The ISO/TS 19103 UML Profile
6.1 Introduction
This clause provides rules and guidelines on the use of UML within the field of geographic information. It
defines specific aspects for the use of UML compliant with the ISO geographic information standards. It is
based on general UML as defined in ISO/IEC 19501 (Annex D). Annex D follows the same structure as this
clause, to make it easy to refer to the relevant standard UML concepts.
The subclauses are structured as follows:
General usage of UML
Classes
Attributes
Data types
Operations
Relationships and associations
Stereotypes and tagged values
Optional, conditional and mandatory attributes and associations
Naming and name spaces
Packages
Notes
Constraints
Documentation of models
6.2 General usage of UML
UML (The Unified Modeling Language) shall be used in a manner that is consistent with ISO/IEC 19501.
[1] [2]
NOTE Books, such as “UML User Guide” and “UML Reference Manual” contain further information. The book
[4]
“UML Distilled” is a shorter introductory text.
All normative class models shall contain complete definitions of attributes, associations, operations and
appropriate data type definitions. Other kinds of UML diagrams may also be used as normative models. It is
the need for this completeness that makes it necessary to define this UML profile, as UML in general can be
used on various levels of precision and completeness.
8 © ISO 2005 – All rights reserved
---------------------- Page: 16 ----------------------
SIST-TS ISO/TS 19103:2009
ISO/TS 19103:2005(E)
6.3 Classes
A class according to this Technical Specification is normally viewed as a specification and not as an
implementation. Attributes are considered abstract and do not have to be directly implemented (i.e. as fields in
a record or instance variables in an object). This is not in conflict with the process of encoding as described in
ISO 19118, as this describes an external representation that does not have to be equivalent to the internal
representation.
For this reason, conceptual schemas adhering to this profile of UML shall stereotype all classifiers as
<> unless they specifically intend to specify internal representation.
NOTE Classifiers specified as <> (lacking identity) are not usually assumed to be types in UML, but may
be assumed to be abstract for conceptual schemas adhering to this profile of UML unless the schema in which they are
defined specifically states otherwise.
For each class defined according to this Technical Specification, the set of attributes defined with this class,
together with the sets of attributes of classes that are reachable directly or indirectly via associations, shall be
sufficient to fully support the implementation of each operation defined for this particular class.
Use of multiple inheritance is an issue in many implementation environments and can cause problems if
handled improperly in those environments. For this reason, the use of multiple inheritance should be
minimized or avoided unless it is a fundamental part of the semantics of the type hierarchy. If used, the
schema adhering to this UML profile shall not require that the implementation classes realizing the standards
specified types replicate the inheritance model of the types.
6.4 Attributes
Attributes are used according to standard UML (see D.4).
6.5 Data types
6.5.1 General considerations
The classes and templates (parameterized types) defined in this clause are those that are usually defined by
the development environment’s data definition language. Each of these types can be represented in a variety
of logically equivalent forms. The ones presented here are not meant t
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.