View System Documentation - Naming Conventions
MixedCaseWithStartingLetterCapitalized
Items named with this naming convention are typically content manager data files or a definition of an item within a programming context. These include:- Deployment specific/content manager maintained XML data content files. Examples of this include Query module XML file names and static content Page XML file names. The intent is to distinguish between files which a content manager type user would maintain (MixedCase) and an application developer would maintain (all_lower_case).
- db record name (primary key/ID)
- System generated indicator profile XML file names (based on the db record name which is content manager user defined.
- URL control parameters like "PrinterFriendly", "GraphicType", "GraphicName", "Debug" etc. These are typically passed to the XSLT as parameters. They are named MixedCase so they stand apart from normal XSLT variable names.
- Java system property names. These are considered definitions not instances. The property names are typically delimited with a "." character to aid readability.
- Java Spring bean configuration names. Considered an object definition and are not the actual object instances which Spring creates. The names are typically delimited with a "." character to aid readability.
- XSLT style sheet definitions. These are structured like Java objects with an inheritence/import directory structure so they are named like Java objects. The exception to this is the "ibis.xslt" as it defines functions and thus is named according to its "ibis:" namespace. File names ending with "Page.xslt" are always a content type HTML page producing XSLT. XSLT files that are not named with a "Page" contain XSLT code that is a library of templates or an API definition with the variables and templates being named with a "Filename." type prefix.
- XSLT parameter names. These, in many cases, match/are URL parameters which are MixedCase.
- CSS/HTML style sheet class definitions.
- Javascript prototype/class definitions
- Java class definitions and compiled class file names. Even though this is an application developer/system type of file it is named MixedCase due to the Java Class naming standard.
Typically these items which are named with "MixedCase" names are considered
definitions of something - not instances of something. It is noted that this
highly depends on the perspective e.g. db records from a db designer perspective
would say that an indicator record is simply an instance of type indicator.
From a user's perspective they're defining Low Birth Weight Utah v.s. US.
mixedCaseWithStartingLetterLowerCase
Items named using this convention are typically instances of something - although again this depends on the perspective. The items listed below are all programming language related and in the application developer domain:- HTML element names/IDs
- Javascript variables
- Javascript functions
- Java variables
- Java methods
- XSLT template names
- XSLT template parameter names
- XSLT template and global variables
- CSS/HTML style sheet "id" related definitions with the filename matching the element's ID.
XSLT API TYPE TEMPLATES: These are named with a "api." type prefix. For
example the "Page.xslt" XSLT file defines/contains a set of templates
that make the Page API. These templates are meant to be able to be used,
reused, and overridden. It is a good practice to have some type of prefix
on the template name the developer has an idea of where to look to find the
template. It also helps to provide some extra information about what that
template does and where it fits in.
XSLT GLOBAL VARIABLES: These are named with a "filename." type prefix. This is similar to the API naming convention discussed above. If a global variable is to be used outside of the current XSLT, it is often prefixed with a value that matches the file from where it is defined. This again helps a developer to locate the variable and to provide a little insight.
XSLT GLOBAL VARIABLES: These are named with a "filename." type prefix. This is similar to the API naming convention discussed above. If a global variable is to be used outside of the current XSLT, it is often prefixed with a value that matches the file from where it is defined. This again helps a developer to locate the variable and to provide a little insight.
all_lower_case_with_words_seperated_by_underscore
This naming convention applies only to "IBIS-PH View System" file names and the application's file directories. A "system" file is a file that is part of the core application and is not content manager maintain data. These files are created and maintained by application developers or web designers and include the following file names:- file directories
- CSS definitions that are NOT large class or ID related
- Graphic images
- Map layer XMLs
- System XML file lists
- Application menu XMLs
- System properties
- Spring XML configurations
System related files are named this way as a carry over from old school
Unix system administrators who pretty much insisted on all files being
lower case. This also helps when deploying into different operating
systems that may or may not be case sensitive. Another benefit is that
it also helps distinguish between system files and files that are auto
generated or that users (super users) create and maintain.
ALL_UPPERCASE_WITH_WORDS_SEPERATED_BY_UNDERSCORE
Items named using this naming convention include data element fields and static Java variables. Specifically these are:- Javascript static constants
- Java static constants
- RDBMS table names
- RDBMS column names
- IBIS-PH related XML element names
DB table and column names this is simply a standard that Garth carried
over from years of db work - old habits die hard. Also, this is pretty
much a standard that most db developers have used for 15+ years.
IBIS XML element names are named this way because they are created from DB tables which are named this way. The module element names do NOT come from a DB table but the thought was/is to someday create a GUI front end for this that would keep the definition in a db. Plus it's consistent with all other IBIS XML elements. It also helps distinguish IBIS XML elements.
IBIS XML element names are named this way because they are created from DB tables which are named this way. The module element names do NOT come from a DB table but the thought was/is to someday create a GUI front end for this that would keep the definition in a db. Plus it's consistent with all other IBIS XML elements. It also helps distinguish IBIS XML elements.