RE: Naming conventions

My feeling (and I could be wrong) is that the SemWeb people will see that from a formal perspective there is no necessity to adopt a naming convention, and that there is no mechanism within the current formalisms to enforce one. In the case of an ontology, a naming convention could be seen as meta-meta-data.

 

My concern is not for the formalists. My concern is for the ordinary 9-to-5 (am!) software developers who tend only to see the endpoints of a vocabulary (i.e. the method/variable names) when they are working with source code. It is their lives that I am trying to simplify. The last thing we should do is produce a vocabulary that could be difficult to use in practice, even if it is perfect from a formal perspective. That's why I take off my formal hat for a while and say I'm in favour of a naming convention.

 

---Rotan.

 

From: jmcf@tid.es [mailto:jmcf@tid.es] 
Sent: 13 March 2007 12:08
To: Rotan Hanrahan
Cc: public-ddwg@w3.org
Subject: Re: Naming conventions

 

+1 for the naming conventions, perhaps we could get advice from the "Semantic-Web Best Practices and deployment working group" for guidelines on naming conventions 

What do you think?

Best Wishes

Rotan Hanrahan escribió: 

As we move closer to figuring out how to use Protégé to create our ontology for the Core Vocabulary, I would like to ask if we should adopt a naming convention for properties/attributes/classes/whatever?

Strictly speaking, the names should be irrelevant because this data is processed by a machine and machines don't speak natural languages. But I also have a concern for the ordinary software developers, who like a bit of "self documentation" in method names, variable names etc.

For this reason, it would be good if we had a few simple rules to make the ontology (and subsequent vocabulary) self-documenting from a human point of view. For example, it would be good if the name of a property suggested a type, such as "hasABC" would always imply a Boolean type. (I come from a formal background, so I know of the dangers of implied typing (e.g. Hungarian Notation) but we should be able to enforce the relationship if we control the ontology properly.)

Take the samples that we have been using internally as we learn how to use Protégé. We have cases of hasABC and supportsABC (both Booleans) and we have cases of hasABC and supportsABC being non-Boolean. While this is valid from a formal perspective, a typical developer using these names might express some doubt as to whether compatible types were being used.

What do others think?

---Rotan

Sample from our ongoing experiments with Protégé:

hasPointingResolution

        PointingResolution

        Pixel

supportsBluetoothProfiles

        BluetoothProfile

        Dialup Networking

supportsInputCharacterSets

        CharacterSet

        WINDOWS-1252

supportsVoiceRecognition

        Boolean

        true

hasNumberOfSoftKeys

        int

        0

hasTextInputType

        TextInputType

        Alphanumeric

hasPrimaryCPU

        CPU

        ARM9

hasDeviceName

        string

        Sony Ericsson P910i

hasProportionalDefaultFont

        Boolean

        true

supportsAudioOutput

        Boolean

        true

hasDisplay

        Display

        Display_SonyEricsson_P910

supportsOutputCharacterSets

        CharacterSet

        WINDOWS-1252

hasTactileInputType

        TactileInputType

        Full Keyboard

 

Received on Tuesday, 13 March 2007 12:19:54 UTC