No sé, sin embargo su referencia parece estar mal, eliminar el "$" firmar es decir:
"items" : {"$ref": "#"}
Aquí está una copia pegada post que puse en el foro JSON relativo a las referencias:
De acuerdo con el borrador 03, aquí está lo que entendí acerca de especificar una identificación y hacer referencia a ella desde cualquier lugar. Por favor comente si algo está mal. Los casos están escritos de la siguiente manera: a. El uri desde donde recupero el esquema b. el esquema obtuvo c. cómo hacer referencia a este esquema
1. A schema without any "id" property
I fetch : http://someSite.com/somePath
I get : { }
I can ref it : {"$ref":"http://someSite.com/somePath#"}
2. Same absolute id and uri path
I fetch : http://someSite.com/somePath
I get : {"id":"http://someSite.com/somePath#"}
I can ref it : {"$ref":"http://someSite.com/somePath#"}
3. Different absolute id and path
I fetch : http://someSite.com/somePath
I get : {"id":"http://anotherSite.com/anotherPath#"}
I can ref it : {"$ref":"http://anotherSite.com/anotherPath#"}
4. Relative - a fragment
I fetch : http://someSite.com/somePath
I get : {"id":"#something"}
I can ref it : {"$ref":"http://someSite.com/somePath#something"}
5. Relative path and fragment
I fetch : http://someSite.com/somePath
I get : {"id":"/oneMore/path#something"}
I can ref it : {"$ref":"http://someSite.com/somePath/oneMore/path#something"}
6. Relative path from file
I fetch : file:///someFolder/someFile
I get : {"id":"/oneMore/path#something"}
I can ref it : {"$ref":"file:///someFolder/someFile/oneMore/path#something"}
7. Inner schema (sub schema) with id "#subschema" (no id for the main schema)
I fetch : http://someSite.com/somePath
I get : {"properties" : { "aKeyName" : { "id":"#subschema" }}}
I can ref it : {"$ref":"http://someSite.com/somePath#subschema"}
8. Inner schema (sub schema) with id "#subschema"
I fetch : http://someSite.com/somePath
I get : { {"id":"#mainSchema"}, "properties" : { "aKeyName" : { "id":"#subschema" }} }
I can ref it : {"$ref":"http://someSite.com/somePath#subschema"}
I can also do: {"$ref":"http://someSite.com/somePath#mainSchema/properties/aKeyName"}
9. Inner schema (within the property under the "aKeyName") but no id at all
I fetch : http://someSite.com/somePath
I get : { "properties" : { "aKeyName" : { }} }
can ref it: {"$ref":"http://someSite.com/somePath#/properties/aKeyName"}
10. Inner schema (sub schema) with a main custom absolute uri"
I fetch : http://someSite.com/somePath
I get : { {"id":"scheme://something"}, "properties" : { "aKeyName" : { "id":"#subschema" }} }
I can ref it : {"$ref":"scheme://something#subschema"}
I can also do: {"$ref":"scheme://something#/properties/aKeyName"}
11. Inner schema with it's own absolute uri"
I fetch : http://someSite.com/somePath
I get : { {"id":"#main"}, "properties" : { "aKeyName" : { "id":"http://domain.com/subSchema" }} }
I can ref it : {"$ref":"http://domain.com/subSchema#"}