No, there is no official specification of the .xyz format for point clouds.
The .xyz format can be seen as part of a more general type of file format: ASCII point cloud. You can consider the members of this group with many other extensions, for example: .asc, .txt, .pts
The problem is that due to the lack of specification, the contents of the file may vary depending on the creator.
The most logical would be that the first 3 columns always represent the coordinates X, Y, Z, and the remaining columns represent some scalar field associated with this point (possibly the values โโof R, G, B or Nx, Ny, Nz, etc. .)
If you want to consider all the possibilities that you need to take into account, consider not only the variable number of columns, but also the ASCII character used to separate each column and the possible existence of 1 or more header lines at the beginning of the file.
The best custom ASCII cloud loader I know of is included in CloudCompare .
Here is a screenshot of the dialog:

And a link to the source code .
source share