Some attributes affect not merely their parent element but all their parent's descendents. This phenomenon is called inheritability.
Most attributes are non-inheritable. That is, the attribute relates only to the
parent element. Examples: @xml:id
, @flags
.
If TAN schema documentation for an attribute does not state anything about the
inheritability of an attribute's values, it should be treated as
non-inheritable.
Most inheritable attributes are weakly inheritable. That is, inheritance stops at
any descendant that has the same attribute. For example, @xml:lang
set to eng
specifies that its text nodes are in English, but it might contain another element
whose @xml:lang
is set
lat
. In that case, the text will be marked as Latin, not English.
Other inherited attributes are cumulative. That is, their values somehow combine.
For example, if an element with @cert
wraps another, and each one has a @cert
value of 0.5
, it
means that the wrapped element qualifies any claim it participates in as being only
25% certain (compounded perhaps by other elements in the claim that are not
completely certain). @n
in a
<div>
is indirectly
cumulative for the purposes of resolving values of @ref
. Any given <div>
has one or more implied
references, formed by all permutations of concatenating values of inherited
@n
s.
Cumulative inherited attributes are infrequent. The documentation must be studied to understand how each one behaves.
Some attributes have greater priority over other attributes. This is important for
interpretation. @claimant
, for
example, has priority over @cert
.
That is, the two attributes in the same element are to be interpreted to mean:
"@claimant
has
@cert
confidence about the
following claim:...." (It does not mean that one is uncertain whether the claimant
made such-and-such a claim.)