+ private final String localName;
+
+ private DName(String localName) {
+ assert localName != null;
+ this.localName = localName;
+ }
+
+ private DName() {
+ this.localName = null;
+ }
+
+ @Override
+ public String localName() {
+ if (localName != null)
+ return localName;
+ else
+ return name();
+ }
+