Re: Naming convention for deeply structured classes and subclasses

Why do you feel that long names are somehow a bad thing?

If you feel compelled to use short names and are worried about short  
names being less meaningful to human readers, you can always add a  
longer description via rdfs:comment or dc:description.

For example:

	foo:SDIAccess rdfs:comment "Software Desktop Internet Access"
	foo:SDMVideo rdfs:comment "Software Desktop Multimedia Video"
	...

As a side note,  I might suggest that you use upper-cased names for  
classes, and lower-case names for properties. That seems to be a  
fairly common convention.

My two cents,
Brian Manley


On Jul 9, 2009, at 11:54 PM, Kevin Jenkins wrote:

>
> Greetings,
>
> I sent an e-mail previously inquiring about naming conventions. In  
> retrospect, I can see my question didn’t make much sense.  I have  
> since been working extensively with the protégé 4 Owl Editor and  
> have learned much in the way of answering my own questions.   
> However, I am still running into an issue with naming conventions,  
> but I do have a better understanding now of what exactly it is that  
> I’m trying to get advice for.
>
> I am currently trying to create an ontology for software.  As you  
> can imagine, software is a very complex product and there is a lot  
> to it.  After weeks I believe I have arrived at a smart and  
> intuitive class and subclass structure.   The problem I’m having now  
> is how to name my classes and subclasses.  My structure is 5 levels  
> deep where level 1 is the root class and level 5 is the individual  
> (or instance). Naming classes and instances after level 1 is  
> perplexing.  I was hoping somebody here could give me some advice on  
> how this might be done using current ontology best practices.  Below  
> I am including a small example of the current structure below.  I  
> have not tried to officially name the classes yet as I’m not sure  
> how.  So I have used a temporary naming convention that enables me  
> to easily understand and organize my classes.  But I am getting to  
> the point now where I’d like to start officially naming them.
>
> =========
>
> Product (Root Class)
> --- software
> ------ desktop software
> ------------ desktop internet software
> ------------------- desktop internet access software (individual)
> ------------------- desktop internet browser software (individual)
> ------------------- desktop internet messaging software (individual)
> ------------ desktop multimedia software
> ------------------- desktop multimedia 3d software (individual)
> ------------------- desktop multimedia audio software (individual)
> ------------------- desktop multimedia video software (individual)
> ------ internet software
> ------------ internet saas software
> ------------------- internet saas collaboration software (individual)
> ------------------- internet saas videosharing software (individual)
> ------------ internet cloud software
> ------ enterprise software
> Person (Root Class)
> Press (Root Class)
>
> =========
>
> It is my understanding all names must be unique (at least that seems  
> to be what the protégé editor is saying). I should probably be using  
> some combination of suffix and prefix to ensure so. But which ones?   
> Also, I understand that shorter names are preferred.  As you can  
> see, by the time I get down to the instance level the name gets very  
> long if I am to keep it unique and human understandable. Of course I  
> could use a lot of acronym type names which would be short and sweet  
> for machines, but entirely unintelligible for humans.
>
> I would really appreciate some advice on how to intelligently name  
> my class structure. Obviously, I’m most concerned with Levels 3-5.   
> Levels 1-2 are basic.
>
> I hope this time I have made much more sense with my inquiry.   
> Thanks for the help!
>
> Regards
> Kevin
>
>
>
>

Received on Friday, 10 July 2009 08:43:04 UTC