# Class VotLintContext

java.lang.Object
uk.ac.starlink.ttools.votlint.VotLintContext

public class VotLintContext extends Object
Context for a VOTLint process. This is the object which knows most of the available global information about the parse. It also provides facilities for reporting log information about the parse to the user.

Author:
  Mark Taylor (Starlink)

## Constructor Summary

Constructors
Constructor
Description
`VotLintContext(uk.ac.starlink.votable.VOTableVersion version, boolean validate, SaxMessager messager)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`void`
`error(VotLintCode code, String msg)`
Write an error message to the user.
`Locator`
`getLocator()`
Returns the SAX document locator for this parse.
`Map<String,String>`
`getNamespaceMap()`
Returns prefix->namespaceURI map for the xmlns namespaces currently in scope.
`uk.ac.starlink.votable.VOTableVersion`
`getVersion()`
Returns the version of VOTable this context is parsing.
`void`
`info(VotLintCode code, String msg)`
Write an informative message to the user.
`boolean`
`isCheckUcd()`
Indicates whether ucd attribute values will be checked.
`boolean`
`isCheckUnit()`
Indicates whether unit attribute values will be checked.
`boolean`
`isValidating()`
Indicates whether this lint is validating.
`void`
`registerID(String id, ElementHandler handler)`
Register the fact that an XML ID-type attribute has been seen on an element.
`void`
`registerRef(String id, ElementRef from, RefChecker checker)`
Register the fact that an XML IDREF-type attribute has been seen on an element.
`void`
`reportUncheckedRefs()`
Goes through all the unresolved IDREF->ID arcs and reports them.
`void`
`reportUnusedIds()`
Goes through all declared IDs that were never referenced.
`void`
`setCheckUcd(boolean checkUcd)`
Sets whether ucd attribute values will be checked.
`void`
`setCheckUnit(boolean checkUnit)`
Sets whether unit attribute values will be checked.
`void`
`setLocator(Locator locator)`
Sets the SAX document locator for this parse.
`void`
`warning(VotLintCode code, String msg)`
Write a warning message to the user.

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### VotLintContext

public VotLintContext(uk.ac.starlink.votable.VOTableVersion version, boolean validate, SaxMessager messager)
Constructor.

Parameters:
  `version` - version of VOTable for which the parse will be done
  `validate` - if true, validation will be performed against the appropriate DTD/schema
  `messager` - destination for validation messages

## Method Details

### getVersion

public uk.ac.starlink.votable.VOTableVersion getVersion()
Returns the version of VOTable this context is parsing.

Returns:
  version object

### isValidating

public boolean isValidating()
Indicates whether this lint is validating.

Returns:
  true for validating lint

### isCheckUcd

public boolean isCheckUcd()
Indicates whether ucd attribute values will be checked. Checking is currently against the UCD1+ standard.

Returns:
  whether to check UCD syntax

### setCheckUcd

public void setCheckUcd(boolean checkUcd)
Sets whether ucd attribute values will be checked. Checking is currently against the UCD1+ standard.

Parameters:
  `checkUcd` - whether to check UCD syntax

### isCheckUnit

public boolean isCheckUnit()
Indicates whether unit attribute values will be checked. Checking is against the VOUnits standard.

Returns:
  whether to check unit syntax

### setCheckUnit

public void setCheckUnit(boolean checkUnit)
Sets whether unit attribute values will be checked. Checking is against the VOUnits standard.

Parameters:
  `checkUnit` - whether to check unit syntax

### setLocator

public void setLocator(Locator locator)
Sets the SAX document locator for this parse.

Parameters:
  `locator` - locator

### getLocator

public Locator getLocator()
Returns the SAX document locator for this parse.

Returns:
  locator

### getNamespaceMap

public Map<String,String> getNamespaceMap()
Returns prefix->namespaceURI map for the xmlns namespaces currently in scope.

### registerID

public void registerID(String id, ElementHandler handler)
Register the fact that an XML ID-type attribute has been seen on an element.

Parameters:
  `id` - ID value
  `handler` - element labelled `id`

### registerRef

public void registerRef(String id, ElementRef from, RefChecker checker)
Register the fact that an XML IDREF-type attribute has been seen on an element.

Parameters:
  `id` - ID value
  `from` - the element on which the ref has been seen
  `checker` - the checker which knows how to check links of this type

### reportUncheckedRefs

public void reportUncheckedRefs()
Goes through all the unresolved IDREF->ID arcs and reports them. This is done at the end of the parse.

### reportUnusedIds

public void reportUnusedIds()
Goes through all declared IDs that were never referenced. Such unreferenced IDs are not an error, but in some cases this is susplicious, so warnings may be reported. This is done at the end of the parse.

### info

public void info(VotLintCode code, String msg)
Write an informative message to the user.

Parameters:
  `code` - message identifier
  `msg` - message text

### warning

public void warning(VotLintCode code, String msg)
Write a warning message to the user.

Parameters:
  `code` - message identifier
  `msg` - message text

### error

public void error(VotLintCode code, String msg)
Write an error message to the user.

Parameters:
  `code` - message identifier
  `msg` - message text