protected void printCDuration(CDuration cduration, Element out) {
if (cduration.getPattern() != null) {
printString("pattern", cduration.getPattern().toString(), out);
}
Element range = new Element("range", defaultNamespace);
out.getChildren().add(range);
if(cduration.getInterval() != null) {
printInterval(cduration.getInterval(), range);
} else {
printString("lower_unbounded", "true", range);
printString("upper_unbounded", "true", range);
}
if(cduration.hasAssumedValue()) {
printString("assumed_value", cduration.assumedValue().toString(), out);
}
}