[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: [tm-pubsubj-comment] Recommendations for using XTM
The strawman proposal I posted on February 1st elicited a number of comments, but I got the feeling that it wasn't the best way for most people to get to grips with the issues. Also, there is still an important question to be resolved: Whether or not (and if so, to what extent) we want to recommend the use of XTM. In order to help move the discussion forward I have a new proposal. It takes the form of actual text to go in section 5.1 of the Recommendations document. I would like to suggest that Bernard inserts it into psdoc.htm at the appropriate place in order to provoke a discussion. Feel free to put a disclaimer in there stating that it is a strawman proposal that does not yet have the backing of the TC (or even the author :). It's pretty complete, but there are a few open issues left at the end. Two PSI sets that follow these recommendations are available for online browsing in the Omnigator at the following URLs: http://www.ontopia.net/omnigator/models/topicmap_complete.jsp?tm=pubsubj.psi http://www.ontopia.net/omnigator/models/topicmap_complete.jsp?tm=ontopia.psi The source of the Ontopia PSI set is at http://psi.ontopia.net/ontopia/ontopia.psi An HTML rendition is available at http://psi.ontopia.net/ontopia/ These are revised versions of the PSI sets originally published on 2002-02-01. Steve **************************** cut here ******************************* 5.1 Recommendations for publishing PSI sets as topic maps ----------------------------------------------------- This section describes recommendations for publishers who wish to use topic maps for the purpose of publishing PSI sets. The principle advantage of expressing PSI sets as topic maps is that the PSI sets thereby become available in a machine processable form with clearly defined semantics and can be used directly by topic map-aware applications, including taking advantage of the topic map merging facility and being accessed via a standard topic map query language. Publishers are free to express subject indicators in any form that can be rendered for interpretation by humans, including topic maps that do not follow these recommendations. However, by following these recommendations, publishers that wish to use topic maps will achieve greater interoperability with other topic map-based PSI sets and applications that are designed to derive the maximum potential from them. 5.1.1 The PSI set topic map ------------------------ Each PSI set should be represented by a single topic map, called the PSI set topic map, and each PSI set topic map should contain a single PSI set. The PSI set topic map should have a canonical identifier in the form of a URL that resolves to the resource containing the topic map. NOTE: The examples in this section assume that the PSI set topic map has the following canonical location: http://psi.mydomain.com/my-psi-set.xtm [ISSUE: Could xml:base be used to establish this the canonical identifier, or should we use an occurrence on the TM topic?] The PSI set topic map should consist primarily of topics that are intended to be used as published subject indicators and associations that express metadata properties of those PSIs. It may also contain additional topics that are not intended by the publisher to be used as published subject indicators. 5.1.2 The topic map topic ---------------------- The topic map should also contain a topic that reifies the topic map itself. This topic, called the "topic map topic" (TM topic), is the nexus for metadata about the PSI set and should be an instance of the class http://psi.topicmaps.org/pubsubj/pubsubj.psi#psiset EXAMPLE: <?xml version="1.0" encoding="iso-8859-1"?> <topicMap xmlns="http://www.topicmaps.org/xtm/1.0/" xmlns:xlink="http://www.w3.org/1999/xlink" id="my-psi-set" > <topic id="my-psi-set-topic"> <instanceOf> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#psiset"/> </instanceOf> <subjectIdentity> <subjectIndicatorRef xlink:href="#my-psi-set"/> </subjectIdentity> <!-- names and occurrences --> </topic> ... </topicMap> The TM topic should have at least one name and one description, and may also have other metadata as deemed appropriate by the publisher. 5.1.3 Published subject indicator topics ------------------------------------- Each published subject indicator in the PSI set should be a topic whose subject is the subject that it serves to indicate. For example, the topic whose subject is "publisher" would serve as the subject indicator for that subject. A topic that serves as a published subject indicator is called a PSI topic. PSI topics should have at least one name and one description. 5.1.4 Metadata ----------- Metadata about the PSI set and individual subject indicators should be expressed as topic characteristics of the TM topic and the PSI topics respectively. These recommendations define certain published subjects for this purpose, but publishers are free to create and use additional PSIs as required for expressing other metadata properties. Metadata properties should be expressed using subject identity, names, occurrences, or associations as described below. No topic should have more than one name in a given scope or more than one occurrence of a given type in a given scope. 5.1.4.1 Subject identity -------------------- Subject identity should be used to indicate the published subject indicator of a PSI topic via a subject indicator reference that references the topic itself. EXAMPLE: <topic id="my-psi"> <subjectIdentity> <subjectIndicatorRef xlink:href="http://psi.mydomain.com/my-psi-set.xtm#my-psi"/> </subjectIdentity> ... </topic> Topics that are intended by the publisher to be used as subject indicators may be distinguished from other topics in the topic map by the fact that they have self-referential subject identity. [This property corresponds to dc:identifier] [ISSUE: What about the TM topic? Does it need an identifier? Is this the way we establish the canonical URI of the PSI set?] 5.1.4.2 Base names -------------- Base names should be used to indicate the title(s) of the PSI set represented by the TM topic and the name(s) of the subjects indicated by the PSI topics. If no language property is specified for the PSI set, the TM topic and PSI topics should have exactly one base name in the unconstrained scope and may have additional base names in other scopes. If the language property of the PSI set specifies a single language, the TM topic and PSI topics should have either exactly one base name in the unconstrained scope or exactly one base name in the scope of the PSI set language, and may have additional base names in other scopes. If the language property of the PSI set specifies multiple languages, the PSI topics should have exactly one base name for each language, in the scope of that language, and may have additional base names in other scopes. EXAMPLE 1: No language property specified for PSI set, or name of subject is not language dependent: One base name in the unconstrained scope. <topic id="my-subject"> <baseName> <baseNameString>My subject</baseNameString> </baseName> ... </topic> EXAMPLE 2: Subject has different names in different languages (here: English and Norwegian): One base name per language in the scope of that language. <topic id="my-subject"> <baseName> <scope> <subjectIndicatorRef xlink:href="http://www.topicmaps.org/xtm/1.0/language.xtm#en"/> </scope> <baseNameString>My subject</baseNameString> </baseName> <baseName> <scope> <subjectIndicatorRef xlink:href="http://www.topicmaps.org/xtm/1.0/language.xtm#no"/> </scope> <baseNameString>Mitt tema</baseNameString> </baseName> ... </topic> [This property corresponds to dc:title] 5.1.4.3 Occurrences --------------- Occurrences should be used to express description properties of the PSI set and the subject indicators, and may also be used to express date properties of the PSI set, as follows: 5.1.4.3.1 Description occurrences ----------------------------- Occurrences of type http://psi.topicmaps.org/pubsubj/pubsubj.psi#description on the PSI topics should be used to provide descriptions of the subjects indicated by the PSI topics, and may also be used on the TM topic to provide descriptions of the PSI set. Such occurrences may be internal or external. If no language property is specified for the PSI set, the PSI topics should have exactly one description occurrence in the unconstrained scope and may have additional such occurrences in other scopes. If the language property of the PSI set specifies a single language, the PSI topics should have either exactly one description occurrence in the unconstrained scope or exactly one description occurrence in the scope of the PSI set language, and may have additional description occurrences in other scopes. If the language property of the PSI set specifies multiple languages, the PSI topics should have exactly one description occurrence for each language, in the scope of that language, and may have additional description occurrences in other scopes. EXAMPLE 1: Language property of PSI set unspecified or specified as being a single language: One description occurrence in the unconstrained scope. <topic id="my-subject"> ... <occurrence> <resourceData>Description of my subject.</resourceData> </occurrence> </topic> EXAMPLE 2: Language property of PSI set specified as being multiple languages (here: English and Norwegian): One description occurrence per language in the scope of that language. <topic id="my-subject"> ... <occurrence> <instanceOf> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#description"/> </instanceOf> <scope> <subjectIndicatorRef xlink:href="http://www.topicmaps.org/xtm/1.0/language.xtm#en"/> </scope> <resourceData>Description of my subject.</resourceData> </occurrence> <occurrence> <instanceOf> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#description"/> </instanceOf> <scope> <subjectIndicatorRef xlink:href="http://www.topicmaps.org/xtm/1.0/language.xtm#no"/> </scope> <resourceData>Beskrivelse av mitt tema.</resourceData> </occurrence> </topic> [This property corresponds to dc:description] 5.1.4.3.2 Date occurrences ---------------------- Occurrences of type http://psi.topicmaps.org/pubsubj/pubsubj.psi#date on the TM topic may be used to indicate the date of the current version of the PSI set. Scope may be used to indicate the notation used to express the date. EXAMPLE: <topic id="my-psi-set-topic"> ... <occurrence> <instanceOf> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#date"/> </instanceOf> <resourceData>2003-03-18</resourceData> </occurrence> </topic> [This property corresponds to dc:date] 5.1.4.4 Associations ---------------- Associations should be used to specify the language property of the PSI set, and may be used to specify the publisher and creator properties of the PSI set, as follows: 5.1.4.3.1 Language -------------- Associations of type http://psi.topicmaps.org/pubsubj/pubsubj.xtm#languageOfPublication between the TM topic and one or more language topics may be used to indicate the language of the PSI set. The TM topic should play the role http://psi.topicmaps.org/pubsubj/pubsubj.xtm#publication and the language topic(s) should play the role http://psi.topicmaps.org/pubsubj/pubsubj.xtm#language The implication of declaring a PSI set to be in one or more language(s) is that the TM topic and the PSI topics either have a base name in the unconstrained scope, or a base name in each of the languages specified, or both; and that the TM topic and the PSI topics, to the extent that they have description occurrences, have one description occurrence in each of the languages specified. EXAMPLE: This association declares the PSI set to be in both English and Norwegian. (Note that two associations, one for each language, could have been used equivalently to the single association used here.) <association> <instanceOf> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#languageOfPublication"/> </instanceOf> <member> <roleSpec> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#publication"/> </roleSpec> <topicRef xlink:href="#my-psi-set-topic"/> </member> <member> <roleSpec> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#language"/> </roleSpec> <subjectIndicatorRef xlink:href="http://www.topicmaps.org/xtm/1.0/language.xtm#en"/> <subjectIndicatorRef xlink:href="http://www.topicmaps.org/xtm/1.0/language.xtm#no"/> </member> </association> [This property corresponds to dc:language] 5.1.4.3.1 Publisher --------------- Associations of type http://psi.topicmaps.org/pubsubj/pubsubj.xtm#publishedBy between the TM topic and some other topic may be used to indicate the publisher of the PSI set. The TM topic should play the role http://psi.topicmaps.org/pubsubj/pubsubj.xtm#publication and the other topic should play the role http://psi.topicmaps.org/pubsubj/pubsubj.xtm#publisher EXAMPLE: <association> <instanceOf> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#publishedBy"/> </instanceOf> <member> <roleSpec> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#publisher"/> </roleSpec> <subjectIndicatorRef xlink:href="http://psi.mydomain.com/my-psi-set.xtm#myEmployer"/> </member> <member> <roleSpec> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#publication"/> </roleSpec> <topicRef xlink:href="#my-psi-set-topic"/> </member> </association> [This property corresponds to dc:publisher] 5.1.4.3.1 Creator ------------- Associations of type http://psi.topicmaps.org/pubsubj/pubsubj.xtm#createdBy between the TM topic and some other topic may be used to indicate the creator of the PSI set. The TM topic should play the role http://psi.topicmaps.org/pubsubj/pubsubj.xtm#publication and the other topic should play the role http://psi.topicmaps.org/pubsubj/pubsubj.xtm#creator EXAMPLE: <association> <instanceOf> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#createdBy"/> </instanceOf> <member> <roleSpec> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#creator"/> </roleSpec> <subjectIndicatorRef xlink:href="http://psi.mydomain.com/my-psi-set.xtm#me"/> </member> <member> <roleSpec> <subjectIndicatorRef xlink:href="http://psi.topicmaps.org/pubsubj/pubsubj.psi#publication"/> </roleSpec> <topicRef xlink:href="#my-psi-set-topic"/> </member> </association> [This property corresponds to dc:creator] 5.1.5 Human interpretable renditions --------------------------------- Publishers who use topic maps to declare published subject indicators may additionally make renditions of those topic maps available in some other format (e.g., XHTML or plain text) in order to guarantee increased interpretability for humans using applications that are not topic map enabled. ... 5.1.6 Other issues --------------- [TBD] * type * other assertions * magic string * URL syntax (psi as a component?) * is the subject of a PSI topic the PS or the PSI itself? * relationship to Dublin Core (should we use URIs like http://purl.org/dc/elements/1.1/publisher instead of http://psi.topicmaps.org/pubsubj/pubsubj.xtm#publisher where appropriate?) [ISSUE: Is this whole self-reference thing too convoluted? An alternative might be to use an occurrence of type "identifier" to specify the published subject identifier. But should we then duplicate this to establish the subject identity of the topic? If we want these topic maps to be usefully mergeable, we have to. But again, it's messy. Perhaps Bernard is right that we shouldn't express psi sets as topic maps at all... If we leave the format completely open, we can always create topic maps that have a topic for each subject in any psi set and thereby achieve the same goal. This also removes the problem that we feel obliged to suggest a more easily human interpretable rendition in addition to the topic map...] **************************** cut here ******************************* -- Steve Pepper, Chief Executive Officer <pepper@ontopia.net> Convenor, ISO/IEC JTC1/SC34/WG3 Editor, XTM (XML Topic Maps) Ontopia AS, Waldemar Thranes gt. 98, N-0175 Oslo, Norway. http://www.ontopia.net/ phone: +47-23233080 GSM: +47-90827246
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC