URIs come for free with everything you define, they're basically names that can be opened on a browser. E.g. if you define a node called Person in your graph http://david.jefts/graph.rdf/, then that node is literally named http://david.jefts/graph.rdf/Person. In the end, you would actually publish this graph to the web so that these links would open real RDF on the web. For now it's just local names.
It is perfectly okay to define your own things, AS LONG AS you do your due diligence and try to connect to others who have already done it. OWL:equivalentClass is a very powerful statement you will probably use, if, e.g., you find an ontology about hobbies (I doubt you will), you can state equivalences between your classes. rdfs:subclassOf is massively powerful. For instance, you may grab some "OnlineAccount" class from the SIOC ontology, and state that your "FacebookAccount" is a subclass of it. You can essentially use SIOC's structure to guide your own.
GOAL:
A re-usable, heavy, connected, true Semantic Web graph to published to the internet to be used in/with/for other research projects
Per Tyler:
GOAL:
A re-usable, heavy, connected, true Semantic Web graph to published to the internet to be used in/with/for other research projects