code: @Override
      public final CharSequence getStringValueCS() {
          String mValue = "";
          try {
              final INodeReadTrx rtx = createRtxAndMove();
  
              switch (nodeKind) {
              case ROOT:
              case ELEMENT:
                  mValue = expandString();
                  break;
              case ATTRIBUTE:
                  mValue = emptyIfNull(rtx.getValueOfCurrentNode());
                  break;
              case TEXT:
                  mValue = rtx.getValueOfCurrentNode();
                  break;
              case COMMENT:
              case PROCESSING:
                  mValue = emptyIfNull(rtx.getValueOfCurrentNode());
                  break;
              default:
                  mValue = "";
              }
          } catch (final TTException exc) {
              LOGGER.error(exc.toString());
          }
  
          return mValue;
      }
docs: {@inheritDoc}