I looked at the XML of a local project (Greek names),
to see how I dealt with this last year, and found that
we recorded these uncertain dates by giving a textual
version, and a separate @notAfter and @notBefore, which
are used for sorting and retrieval. See samples below.

The users in this domain can easily understand what is meant
by "imp.", "101-60 B.C .", or "f.iii B.C." and the uncertanties
therein, but the poor old computer gets a clue
in can use for ordering. It is not clear to me that the users
would distinguish between a search for "definitely 2nd century names"
and "names which might be 2nd century"; I suspect they'd
retrieve 2nd century names and eyeball the result.

Just to show that there are various ways of dealing with this

  <birth notAfter="0310" notBefore="-0031"/>
  <birth notAfter="0310" notBefore="-0031"/>
  <birth notAfter="-0040" notBefore="-0040"/>
  <birth notAfter="-0001" notBefore="-0050"/>
  <floruit>s.i BC</floruit>
  <birth notAfter="-0060" notBefore="-0101"/>
  <birth notAfter="-0122" notBefore="-0139"/>
  <birth notAfter="-0125" notBefore="-0150"/>
  <birth notAfter="-0144" notBefore="-0153"/>
  <birth notAfter="-0156" notBefore="-0157"/>
  <birth notAfter="-0161" notBefore="-0167"/>
  <birth notAfter="-0150" notBefore="-0199"/>
  <floruit>f.ii BC</floruit>
  <birth notAfter="-0100" notBefore="-0200"/>
  <floruit>ii BC</floruit>
  <birth notAfter="-0200" notBefore="-0200"/>
  <floruit>iii-ii BC</floruit>
  <birth notAfter="-0201" notBefore="-0250"/>
  <floruit>s.iii BC</floruit>
  <birth notAfter="-0225" notBefore="-0275"/>
  <floruit>m.iii BC</floruit>
  <birth notAfter="-0250" notBefore="-0299"/>
  <floruit>f.iii BC</floruit>

Sebastian Rahtz      

Information Manager, Oxford University Computing Services
13 Banbury Road, Oxford OX2 6NN. Phone +44 1865 283431