Definition Type: AttributeGroup
Name: formalname
Containing Schema: NewsML_1.2.xsd
Documentation:
================================= formalname =================================== FormalName ========== A string of characters whose meaning is determined by a controlled vocabulary. Vocabulary ========== 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. If there is no Vocabulary attribute and the above algorithm fails to identify a resource that serves as the controlled vocabulary, there is an error, which the NewsML system may signal to the user. The NewsML system may also signal an error if a vocabulary is successfully identified, but it contains no item that matches the value of the FormalName whose meaning is sought. Scheme ====== 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. ================================================================================
Collapse XSD Schema Diagram:
Drilldown into Scheme in schema newsml_1_2_xsd Drilldown into Vocabulary in schema newsml_1_2_xsd Drilldown into FormalName in schema newsml_1_2_xsdXSD Diagram of formalname in schema newsml_1_2_xsd (News Markup Language (NewsML))
Collapse XSD Schema Code:
<xs:attributeGroup name="formalname">
    <xs:annotation>
        <xs:documentation> 
================================= formalname ===================================

FormalName
==========
A string of characters whose meaning is determined by a controlled vocabulary.

Vocabulary
==========
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.

If there is no Vocabulary attribute and the above algorithm fails to identify
a resource that serves as the controlled vocabulary, there is an error, which
the NewsML system may signal to the user.

The NewsML system may also signal an error if a vocabulary is successfully
identified, but it contains no item that matches the value of the FormalName
whose meaning is sought.

Scheme
======
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. 
================================================================================

			</xs:documentation>
    </xs:annotation>
    <xs:attribute name="FormalName" type="xs:string" use="required" />
    <xs:attribute name="Vocabulary" type="xs:string" />
    <xs:attribute name="Scheme" type="xs:string" />
</xs:attributeGroup>
Collapse Child Attributes:
Name Type Default Value Use
FormalName FormalName Required
Vocabulary Vocabulary (Optional)
Scheme Scheme (Optional)