From: Jeni Tennison (jeni@jenitennison.com)
Date: Mon Oct 21 2002 - 19:16:14 CEST
Hi,
I've just updated the LMNOP and SAL .jars and source code .zips,
partly to fix a couple of bugs and partly because of changes to SAL.
There are two main changes to SAL:
1. With the 0.2 changes, entity names and range identifiers are no
longer qualified names. That being the case, I think that having
QName as a separate class just adds objects and makes code more
complex, so this version passes three strings (namespace, local
name and prefix) instead.
2. As I posted a couple of weeks ago, the LayerSpec object didn't
actually work as a means of passing information about the layer
to which a range belongs because it didn't hold sufficient
information about the base of the base of the layer to which the
range belonged. I've changed that now, so that LayerSpec is
removed and instead a String[] array is used as the argument.
The result of these changes is that the following method signatures
are now used:
void startRange(String namespaceURI, String localName,
String prefix, String id, String[] layers)
void endRange(String namespaceURI, String localName,
String prefix, String id, String[] layers)
void startValue(String namespaceURI, String localName,
String prefix, String id, String[] layers)
void endValue(String namespaceURI, String localName,
String prefix, String id, String[] layers)
void startAnnotation(String namespaceURI, String localName,
String prefix)
void endAnnotation(String namespaceURI, String localName,
String prefix)
Does anyone have any feeling about whether we should introduce
separate methods for startAnnotationValue() and endAnnotationValue()
rather than reusing startValue() and endValue()?
I'm inclined to say that we should (a) because the last two arguments
of startValue() and endValue() aren't relevant for annotations (b) you
usually want to do different things depending on whether you've just
detected the end of an annotation or of a range and (c) within a
content handler, it's relatively difficult to work out whether you're
ending a range or an annotation without keeping context around,
whereas it's immediately apparent within the LMNLReader.
Thoughts?
Jeni
--- Jeni Tennison http://www.jenitennison.com/
This archive was generated by hypermail 2.1.5 : Wed Oct 23 2002 - 08:43:44 CEST