that is, the most recently referenced `Stream` or `Stream` subclass such
as `Part`, `Measure`, or `Voice`.  It is a simpler
way of calling `o.getOffsetBySite(o.activeSite, returnType='rational')`.

If we put a `Note` into a `Stream`, we will see the activeSite changes.

>>> import fractions
>>> n1 = note.Note('D#3')
>>> n1.activeSite is None
True

>>> m1 = stream.Measure()
>>> m1.number = 4
>>> m1.insert(10.0, n1)
>>> n1.offset
10.0
>>> n1.activeSite
<music21.stream.Measure 4 offset=0.0>

>>> n1.activeSite is m1
True

The most recently referenced `Stream` becomes an object's `activeSite` and
thus the place where `.offset` looks to find its number.

>>> m2 = stream.Measure()
>>> m2.insert(3/5, n1)
>>> m2.number = 5
>>> n1.offset
Fraction(3, 5)
>>> n1.activeSite is m2
True

Notice though that `.offset` depends on the `.activeSite` which is the most
recently accessed/referenced Stream.

Here we will iterate over the `elements` in `m1` and we
will see that the `.offset` of `n1` now is its offset in
`m1` even though we haven't done anything directly to `n1`.
Simply iterating over a site is enough to change the `.activeSite`
of its elements:

>>> for element in m1:
...     pass
>>> n1.offset
10.0

The property can also set the offset for the object if no
container has been set:

>>> n1 = note.Note()
>>> n1.id = 'hi'
>>> n1.offset = 20/3
>>> n1.offset
Fraction(20, 3)
>>> float(n1.offset)
6.666...

>>> s1 = stream.Stream()
>>> s1.append(n1)
>>> n1.offset
0.0
>>> s2 = stream.Stream()
>>> s2.insert(30.5, n1)
>>> n1.offset
30.5

After calling `getElementById` on `s1`, the
returned element's `offset` will be its offset in `s1`.

>>> n2 = s1.getElementById('hi')
>>> n2 is n1
True
>>> n2.offset
0.0

Iterating over the elements in a Stream will
make its `offset` be the offset in iterated
Stream.

>>> for thisElement in s2:
...     thisElement.offset
30.5

When in doubt, use `.getOffsetBySite(streamObj)`
which is safer or streamObj.elementOffset(self) which is 3x faster.

* Changed in v8: using a Duration object as an offset is not allowed.
Nr©