What does dashes mean in ISO 8601 date and time format?
--0412
--1022T1410
---12
Is it current year and month, some "minimum" year or anything else?
If its a current year, does this means I can not represent it in DateTimeOffset object in .Net because it will set some specific year and month when parsing '---12' string?
In ISO 8601:1998 and ISO 8601:2000 they are known as truncated representations where each hyphens indicate omitted components.
--MMDD
represents a specific day of the month in the implied year. Truncated representations where removed in ISO 8601:2004 because it introduced an ambiguity in truncated representations with implied century.