TopicSet
Element information
Namespace: http://iptc.org/std/NewsML/2003-10-10/
Schema document: NewsML_1.2.xsd
Type: TopicSetType
Properties: Local, Qualified
Content
- Sequence [1..1]
- Comment [0..*]
- Catalog [0..1]
- TopicSetRef [0..*] A pointer to a TopicSet that is to be merged with the current one. The TopicSet attribute is a pointer to the relevant TopicSet. Its value can be an http URL, or a NewsML URN as described in the comment to PublicIdentifier, or a fragment identifier consisting of a # character followed by the Duid of a TopicSet in the current document. The presence of a TopicSetRef child in a TopicSet has the effect that all the Topics in the referenced TopicSet are included by reference within the current TopicSet. When this merging results in there exising two FormalName grandchildren of the same TopicSet that have the same content and the same Scheme attribute value, then the Topics whose children are in fact the same topic, and are deemed to be merged. The merging of Topics need not be performed physically by the system, but the meaning of the data is exactly the same as if the merging were actually performed. Merging two Topcis consists of creating a single Topic that contains all the children of both, and eliminating duplicates.
- Topic [0..*] This element provides information about a thing (Topic) named by a formal name or occurring in a NewsComponent. A Topic must have one or more TopicType subelements, which state what type of Topic it is. The optional Details attribute provides a pointer, in the form of a URL or URN, to additional information about the Topic.
Attributes
Name | Occ | Type | Description | Notes |
---|---|---|---|---|
Duid | [0..1] | xsd:ID | Duid is a "Document-unique Identifier". It must satisfy the rules for XML ID attributes: it must only contain name characters, and it must start with a name-start character (not a digit). Its value must be unique within any NewsML document. Every NewsML element type has Duid as an optional attribute. Combined with the Identifier element, providing a value for the Duid of any element in a NewsML document makes the element globally identifiable. The Identifier element gives global identification to the document, and the Duid provides local identification for the element within the document. | from group localid |
Euid | [0..1] | xsd:string | Euid is an "Element-unique Identifier". Its value must be unique among elements of the same element-type and having the same parent element. Use of Euid attribute makes it possible to identify any NewsML element within the context of its local branch of the NewsML document tree. This makes it possible to copy, or include by reference, subtrees into new combinations in ways that would break the uniqueness of Duids (thereby forcing new Duids to be allocated), but still being able to retain the identity of each element. If Euids are maintained at every level, it is possible to identify, for example "The ContentItem whose Euid is abc within the NewsComponent whose Euid is def". Such identification patterns would be preserved even after "pruning and grafting" of subtrees. | from group localid |
FormalName | [1..1] | xsd:string | A string of characters whose meaning is determined by a controlled vocabulary. The controlled vocabulary may (but is not required to) take the form of a NewsML TopicSet. | from group formalname |
Vocabulary | [0..1] | xsd:string | The Vocabulary attribute, if present, provides a pointer to a TopicSet which is the controlled vocabulary that can be used to resolve the meaning of the FormalName. The value of the Vocabulary attribute is an http URL or a NewsML URN, or the # character followed by the value of the Duid attribute of the a TopicSet in the current document. If there is no Vocabulary attribute, then the controlled vocabulary to be used is located by the following algorithm: - Proceed to the parent of the current element. - If it has a Catalog element as its immediate child, see whether that Catalog contains a Resource element whose DefaultVocabularyFor child contains an XPath pattern that is matched by the current element. If so, then the controlled vocabulary is the resource identified by that Resource element. - If the parent does not meet the above condition, proceed to its parent and check the same condition. - Continue until a vocabulary is found, or no further parent elements are available because the root element has been reached and it too fails to meet the condition. | from group formalname |
Scheme | [0..1] | xsd:string | The Scheme attribute, if present, serves to distinguish which of possibly multiple naming schemes in the controlled vocabulary is the one that governs this FormalName. For a match to be obtained within the controlled vocabulary, the rule is that the FormalName and the Scheme must both match. If there is a Scheme attribute on the current element, then both the FormalName and the Scheme in the controlled vocabulary must match. The controlled vocabulary will be located either through the Vocabulary attribute (if present) or through the appropriate Catalog entry where the Context matches the current element. If a Vocabulary attribute is present that points to a TopicSet then the FormalName may be resolved using this TopicSet. This overrides any relevant Catalog entry. If there is no Scheme attribute on the current element and no Vocabulary attribute then a Scheme may be assigned through as follows: If the Catalog, within the instance or externally referenced from the instance, contains a Resource element with a DefaultVocabularyFor child element with a Context attribute that matches the current element and a Scheme attribute with a value declared, then this Scheme may be applied when resolving the current element FormalName. If the DefaultVocabularyFor has no Scheme value then a match will be to an item in the vocabulary that has the current FormalName and no Scheme. | from group formalname |
Used in
- Anonymous type of element NewsML
- Type NewsComponentType (Element NewsComponent)
- Type NewsItemType (Element NewsItem)
Sample instance
<TopicSet FormalName="string"> <Comment>string</Comment> <Catalog> <Resource> <Urn>string</Urn> <Url>string</Url> <DefaultVocabularyFor Context="string"/> </Resource> <TopicUse Topic="string" Context="string"/> </Catalog> <TopicSetRef> <Comment>string</Comment> </TopicSetRef> <Topic> <Comment>string</Comment> <Catalog> <Resource>... </Resource> <TopicUse Topic="string" Context="string"/> </Catalog> <TopicType FormalName="string"/> <FormalName>string</FormalName> <Description>string</Description> <Property FormalName="string"> <Property FormalName="string">... </Property> </Property> </Topic> </TopicSet>