When I have an example CCD, should I use:
An XSD schema and conclude that I have a valid CCD.
or
I use some other (non-schema based) method. (UML model rules in addition to a valid XML document.)
Is there even such a thing as ccd.xsd? Even if it only partially guides me to create a valid CCD.
Option A is more recommended, which involves parsing the XML document with a DocumentBuilder that has a specific CCD schema source and then checking for validation errors. I recommend looking at the XMLValidation class in the SchematronValidator project; the validXMLUsingXSD(...) method does what you are describing. There are several places to find an XSD for valid CCD XML, but if you don't know where to start, you can find most of the XSDs for CDA/CCR schemas at Microsoft HealthVault. There are some additional ways to use schematron rules to further validate your CCD document (see the Meaningful Use Validator from NIST).
The code for what you are doing will look like the snippet below, where schemaLocation is your XSD file location. The ErrorHandler will store any validation errors.