(First version.)
Introduction
The best available introduction to this
document is ISO/IEC
JTC1 SC34/WG3 N0393.
The Topic Map Application defined by this
document is designed to be included as a module in other Topic Map
Applications, thus serving as a portion of the logical and
semantic foundation of all topic maps that conform to such Topic
Map Applications.
The following naming conventions are used in this TM
Application Definition:
- PR_ is the prefix of all property names.
- AT_ is the prefix of all assertion type names.
- RL_ is the prefix of all role names.
Scope
This document defines a "Topic Map
Application" as that term is defined in ISO/IEC
JTC1 SC34/WG3 N0393.
This TM Application provides properties,
assertion types, built-in topics, and merging rules for specifying
topics whose subjects are:
- assertion types,
- assertion roles, and
- constraints on the role players of
assertions.
References
ISO/IEC
JTC1 SC34/WG3 N0393
Application Name
The name of the TM Application defined in this
document is IS13250-TMASD-%%VERSIONNUMBER%%
"TMASD" stands for "Topic Map Application Self
Description". The assertion type defined herein allows the
definitions of assertion types used in topic maps to be accessed
from within those same topic maps.
Included TM Application
Definitions
(This TM Application does not depend on any
other TM Applications.)
Property Classes
IS13250-TMASD-%%VERSIONNUMBER%%::PR_t-roles{ }
Value type: list of topics treated as a set
Semantic: The value is the set of all
r-topics whose subjects are the roles defined for the assertion
type that is the subject of the t-topic.
Constraints on values: There must be two or
more r-topics in the list.
Consistency constraints:
- Each of the r-topics in the value of the
property must have a reciprocal
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-type property
whose value is the t-topic.
- It is an error if the values of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_t-roles{ }
properties of any two topics have any members in
common.
SIDP or OP? SIDP
Topic Merging Rule: Whenever two or
more topics both exhibit values for their
IS13250-TMASD-%%VERSIONNUMBER%%::PR_t-roles{ } properties,
the topics must be merged if their values are the same set of
topics.
Effect of merging on values: Whenever
two or more topics that exhibit values for their
IS13250-TMASD-%%VERSIONNUMBER%%::PR_t-roles{ } properties are
merged, one of the two values must become the value of the same
property of the merged topic. If any of the members of either
value are built-in, they are built-in in the merged topic.
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-type
Value type: single topic
Semantic: The value is the topic whose subject
is the assertion type of which the subject of the topic is one
of the roles.
Constraints on values: The value must be a
topic whose subject is an assertion type.
Consistency constraint: The topic that is the
value must have a reciprocal
IS13250-TMASD-%%VERSIONNUMBER%%::PR_t-roles{ }
property, one of the members of which must be the
topic.
SIDP or OP? OP
Effect of merging on values: Whenever two or
more topics that exhibit values for their
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-type properties
are merged, one of the two values must become the value of the
same property of the merged topic. The following situations
require implementations to report conflicts:
- The two topics to be merged have different
values for their
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-type
properties.
- After merging the two topics, the assertion
type that is the value of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-type property
has fewer than two different roles.
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-RPC
Value type: single topic
Semantic: The value is the topic whose subject
is the qualification (or set of qualifications) that players of
the role (the role that is the subject of the topic that
exhibits the value) must have.
Constraints on values: The subject of the
topic that is the value, if any, must be a qualification or a
set of qualifications.
Consistency constraint: The subject of the
topic that exhibits the value must be a role.
SIDP or OP? OP
Effect of merging on values: Whenever two or
more topics that exhibit values for their
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-RPC properties
are merged, the following rule applies:
- If both values are the same single topic,
that single topic becomes the value of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-RPC property of
the merged topic.
- In all other cases, the values are regarded
as sets (converting single constraints into sets of
constraints that contain one constraint), and the union of
those sets becomes the value of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-RPC property of
the merged topic.
IS13250-TMASD-%%VERSIONNUMBER%%::PR_httpSubjectIndicator
Value type: string
Semantic: The value is the HTTP address
(possibly including a fragment identifier) of information that,
when rendered for human perception, is assumed to indicate to
the human perceivers the subject of the topic that exhibits the
value.
Constraints on values: The value must
be suitable for use as the addressing parameter of an HTTP GET
process. The value is not suitable if an HTTP GET returns an
error or an empty data stream.
Consistency constraint: (None.)
SIDP or OP? SIDP
Topic Merging Rule: Whenever two or more
topics both exhibit values for their
IS13250-TMASD-%%VERSIONNUMBER%%::httpSubjectIndicator
properties, the topics must be merged if both of the following
conditions are met:
- Under the rules for URI interpretation
specified in IETF RFC 2396:
Uniform Resource Identifiers (URI): Generic Syntax,
as modified in IETF RFC 2732:
Format for Literal IPv6 Addresses in URLs, the two
values must be regarded as identifying the same resource;
and
- Either both values include the same fragment
identifier, or neither value includes a fragment
identifier.
Effect of merging on values: Whenever two or
more topics that exhibit values for their
IS13250-TMASD-%%VERSIONNUMBER%%::httpSubjectIndicator
properties are merged, it is a reportable inconsistency if the
two values are not equivalent, according to the merging rule
specified in . If they are
equivalent, one of the values must become the value of the
IS13250-TMASD-%%VERSIONNUMBER%%::httpSubjectIndicator
property of the merged topic, with any built-in value being
preferred over any conferred value.
Assertion Type
IS13250-TMASD-%%VERSIONNUMBER%%::AT_tTopic-role-RPC
Semantic: Each instance asserts that
a specific assertion type (represented by a t-topic, the player
of the IS13250-TMASD-%%VERSIONNUMBER%%::RL_tTopic role)
has, as one of its roles, a specific role, represented by an
r-topic, the player of the
IS13250-TMASD-%%VERSIONNUMBER%%::RL_role role. It may
optionally also specify one or more "Role Player Constraints
(RPCs)", represented by a topic (the player of the
IS13250-TMASD-%%VERSIONNUMBER%%::RL_RPC role) whose
subject is the qualifications that must be met by the player of
the role in any valid instance of the assertion type.
Role: IS13250-TMASD-%%VERSIONNUMBER%%::RL_tTopic
Semantic: The player of the role is
the t-topic whose subject is, in part, being conferred upon it
by virtue of the existence of this assertion.
Constraints on player:
The role must be played.
Value conferred on the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_t-roles{ } property
of the role player: The r-topic that is the player of the
IS13250-TMASD-%%VERSIONNUMBER%%::RL_role role of the
assertion is made a member of the set that is the value of the
property.
Role: IS13250-TMASD-%%VERSIONNUMBER%%::RL_role
Semantic: The player of the role is
a topic whose subject is being asserted to be one of the
roles of the assertion type that plays the
IS13250-TMASD-%%VERSIONNUMBER%%::RL_tTopic role.
Constraints on player: The role
must be played, and the player's subject must be an assertion
role.
Value conferred on the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-type property of
the role player: The t-topic that is the player of the
IS13250-TMASD-%%VERSIONNUMBER%%::RL_tTopic role of the
assertion becomes the value.
Value conferred on the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_r-RPC property of
the role player: The topic that is the player of the
IS13250-TMASD-%%VERSIONNUMBER%%::RL_RPC role of the
assertion becomes the value.
Role: IS13250-TMASD-%%VERSIONNUMBER%%::RL_RPC
Semantic: The subject of the player of the
role, if any, is the set of qualifications that must be met,
in all instances of the assertion type that plays the
IS13250-TMASD-%%VERSIONNUMBER%%::RL_tTopic role, by
the player of the same role in any such instance that also
plays the IS13250-TMASD-%%VERSIONNUMBER%%::RL_role
role in the current instance of the
IS13250-TMASD-%%VERSIONNUMBER%%::AT_tTopic-role-RPC
assertion type. If the role is unplayed, the qualifications
of the players of the role, in instances of the assertion
type, will not be checked at times when assertions are checked
for consistency with their constraints.
The checking of role players for consistency
with their constraints is part of the process of "fully
merging" a topic map, as defined in ISO/IEC
JTC1 SC34/WG3 N0393, Section 9.2.
Constraints on player: The role may be
unplayed. If the role is played, the subject must be either a
single role-player qualification, or a set of such
qualifications. The set may be empty, in which case the
semantic is the same as if the role were unplayed.
(No values are conferred on properties of
the role player.)
Built-in Topics and Assertions
This section is not yet
complete.
Built-in Topic
Subject: The IS13250-TMASD-%%VERSIONNUMBER%%::AT_tTopic-role-RPC
assertion type
Built-in value of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_httpSubjectIndicator
property:
http://www.isotopicmaps.org/TMMM/TMASD-%%VERSIONNUMBER%%/TMASD-%%VERSIONNUMBER%%.html#parid0082
Built-in Topic
Subject: The IS13250-TMASD-%%VERSIONNUMBER%%::RL_tTopic
role
Built-in value of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_httpSubjectIndicator
property:
http://www.isotopicmaps.org/TMMM/TMASD-%%VERSIONNUMBER%%/TMASD-%%VERSIONNUMBER%%.html#parid0085
Built-in Topic
Subject: The IS13250-TMASD-%%VERSIONNUMBER%%::RL_role
role
Built-in value of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_httpSubjectIndicator
property:
http://www.isotopicmaps.org/TMMM/TMASD-%%VERSIONNUMBER%%/TMASD-%%VERSIONNUMBER%%.html#parid0089
Built-in Topic
Subject: The IS13250-TMASD-%%VERSIONNUMBER%%::RL_RPC
role
Built-in value of the
IS13250-TMASD-%%VERSIONNUMBER%%::PR_httpSubjectIndicator
property:
http://www.isotopicmaps.org/TMMM/TMASD-%%VERSIONNUMBER%%/TMASD-%%VERSIONNUMBER%%.html#parid0006