# Class XsdStage

java.lang.Object
uk.ac.starlink.ttools.taplint.XsdStage

All Implemented Interfaces:
  `Stage`

public abstract class XsdStage extends Object implements Stage
Validation stage for validating a document against a given XML schema.

Since:
  3 Jun 2011
Author:
  Mark Taylor

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`XsdStage(String topElNamespaceUri, String topElName, boolean isMandatory, String resourceDescription)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`String`
`getDescription()`
Returns a short one-line description of this stage.
`abstract URL`
`getDocumentUrl(uk.ac.starlink.vo.TapService tapService)`
Returns the URL of the document to validate, given the service URL for the TAP service.
`XsdValidation.Result`
`getResult()`
Returns a token giving the result status last time this stage was run.
`void`
`run(Reporter reporter, uk.ac.starlink.vo.TapService tapService)`
Performs the validation checks for this stage.

### Methods inherited from class Object

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

## Constructor Details

### XsdStage

protected XsdStage(String topElNamespaceUri, String topElName, boolean isMandatory, String resourceDescription)
Constructor.

Parameters:
  `topElNamespaceUri` - namespace of required document root element
  `topElName` - local name of required document root element
  `isMandatory` - true iff resource is REQUIRED by standard
  `resourceDescription` - short description of what resource contains

## Method Details

### getDescription

public String getDescription()
Description copied from interface: `Stage`
Returns a short one-line description of this stage.

Specified by:
  `getDescription` in interface `Stage`
Returns:
  description in imperative mood

### getDocumentUrl

public abstract URL getDocumentUrl(uk.ac.starlink.vo.TapService tapService)
Returns the URL of the document to validate, given the service URL for the TAP service.

Parameters:
  `tapService` - TAP service description
Returns:
  url of XML document to validate

### run

public void run(Reporter reporter, uk.ac.starlink.vo.TapService tapService)
Description copied from interface: `Stage`
Performs the validation checks for this stage.

Specified by:
  `run` in interface `Stage`
Parameters:
  `reporter` - destination for validation messages
  `tapService` - TAP service description

### getResult

public XsdValidation.Result getResult()
Returns a token giving the result status last time this stage was run.

Returns:
  validation result