This document proposes a new algorithm for ranking resources on the semantic web. It develops a two-level ranking method that first ranks individual terms based on their usage and associations, then ranks documents based on the terms they contain. It defines equations to calculate term rank, document rank, ontological rank, and specificity rank. The algorithm was implemented in Java and tested on ontologies from the NIF. Results were compared to PageRank and human-assigned ranks, though more work is needed to put all ranks on an equal scale for comparison. An integrated web crawler is also being developed to include more resources in testing the algorithm.