code: def p_NsContentName(p):
      '''
      NsContentName : INDENTIFIER
                    | NAMESPACEBEFORESLASH
                    | SLASH INDENTIFIER
                    | NsContentName SLASH INDENTIFIER
      '''
      if len(p) == 2:
          p[0] = NsContentName(None, p[1])
      elif len(p) == 3:
          p[0] = NsContentName(None, p[1] + p[2])
      else:
          p[0] = NsContentName(p[1], p[2] + p[3]f p_NsContentName(p):
      '''
      NsContentName : INDENTIFIER
                    | NAMESPACEBEFORESLASH
                    | SLASH INDENTIFIER
                    | NsContentName SLASH INDENTIFIER
      '''
      if len(p) == 2:
          p[0] = NsContentName(None, p[1])
      elif len(p) == 3:
          p[0] = NsContentName(None, p[1] + p[2])
      else:
          p[0] = NsContentName(p[1], p[2] + p[3])
docs: NsContentName : INDENTIFIER
                    | NAMESPACEBEFORESLASH
                    | SLASH INDENTIFIER
                    | NsContentName SLASH INDENTIFIER