Is there any informal convention to follow with regard to RDF predicates, about using nouns or verbs? For example:
Alice -> knows -> Bob vs Alice -> friend -> Bob
is there a preference for using verbs over nouns?
Yes, the recommended best practice ( e.g., ) is to use verbs such as regulates, hasComponent isComponentOf, isTallerThan, etc. In your example, “knows" and “hasFriend" would be equally acceptable. (They convey somewhat different meanings though: many people I know are not my friends.)