2.5 Test for Empty Nodes

<..static boolean justSpace(node)..>
 static boolean justSpace(Node node){
    if( node == null ){ return true; }
    if( node.getNodeType() == Node.TEXT_NODE ){
        if( !node.getNodeValue().trim().equals("") ){ return false; }
    } else {
        if( node.getNodeType() == Node.ELEMENT_NODE ){
           String nm = node.getNodeName();
           if(
                 !nm.equals("table:table-cell")
              && !nm.equals("text:p")
           ){
              return false;
        }  }
    }
    if(!justSpace( node.getNextSibling() )){ return false; }
    if(!justSpace( node.getFirstChild() )){ return false; }
    return true;
 }
-_-_-

<..bool = is ruler row?..>
 boolean bool = false;
 if( tblRow.getNodeName().equals("table:table-row")
     && tblRow.hasAttributes()
 ){
    NamedNodeMap attributes = tblRow.getAttributes();
    Node styleAttr = attributes.getNamedItem( "table:style-name" );
    String style = (styleAttr==null)? null
                                    : styleAttr.getNodeValue();
    if( (style != null)
        && (   style.equals("hline-row")
            || style.equals("cline-row")
           )
    ){
      bool = true;
 }  }
-_-_-