What is the difference in properties java.runtime.version and java.version

System Property Name | System Property Content  | Where Displayed in java version Output
java.version         | product version          | Line one displays the product version
java.runtime.version | product version          | Line one displays the product version
                     | product build identifier | Line two displays the build identifier

The content of the java.runtime.version system property can be expanded (beyond that of the java.version system property) to include the build id.

It seems that the property value can therefore be equal to the java.runtime content or differentiate by the build id as already pointed out in the question.

java.version is a product version information of Java Runtime environment(JRE). JRE is an implementation of the Java Virtual Machine which actually executes Java programs.

java.runtime.version is a product version along with build identifier of JRE.