btw, What is all this JSON/XML stuff you guys are doing. Just curious. Is there a mail I can read to get an overall idea?
On Mon, Apr 18, 2016 at 2:32 AM, Sohani Weerasinghe <soh...@wso2.com> wrote: > Hi All, > > As per the offline discussion we had, xsi:type can be supported in the > JSON schema as described below > > <address postalcode="111" *xsi:type="ipo:UKAddress"*>123 > <city>ABC</city> > </address> > > xsi:type can be added to a newly introduced json array called > "elementIdentifiers" and the value will be appended to to the field name in > the schema as shown below > > { > "$schema": "http://json-schema.org/draft-04/schema#", > "title": "person", > "id": "http://wso2jsonschema.org", > "type": "object", > "properties": { > "firstName": { > "id": "http://wso2jsonschema.org/firstName", > "type": "string" > }, > "*address,xsi:type=ipo:UKAddress"*: { > "id": " > http://wso2jsonschema.org/phone", > "type": "object", > "value":{ > "type": "number" > }, > > "properties": { > "city": { > "id": "http://wso2jsonschema.org/address/city", > "type": "string" > } > }, > "attributes": { > "postalcode": { > "id": "http://wso2jsonschema.org/address/postalcode", > "type": "string" > } > } > } > }, > *"elementIdentifiers": [{* > * "type": "xsi:type"* > * }]* > } > > @Nuwan : Feel free to add things we've discussed if I've missed anything > > Thanks, > Sohani > > > Sohani Weerasinghe > Software Engineer > WSO2, Inc: http://wso2.com > > Mobile : +94 716439774 > Blog :http://christinetechtips.blogspot.com/ > Twitter : https://twitter.com/sohanichristine > > On Mon, Apr 11, 2016 at 11:57 AM, Sohani Weerasinghe <soh...@wso2.com> > wrote: > >> Correction : This shouldn't add for the root level. >> >> Sohani Weerasinghe >> Software Engineer >> WSO2, Inc: http://wso2.com >> >> Mobile : +94 716439774 >> Blog :http://christinetechtips.blogspot.com/ >> Twitter : https://twitter.com/sohanichristine >> >> On Mon, Apr 11, 2016 at 11:32 AM, Sohani Weerasinghe <soh...@wso2.com> >> wrote: >> >>> Thanks Viraj. >>> >>> I think this should be applied to the root level as well. >>> >>> { >>> "$schema": "http://json-schema.org/draft-04/schema#", >>> "title": "person", >>> * "value"{* >>> * "id": "http://wso2jsonschema.org >>> <http://wso2jsonschema.org>",* >>> * "type": "object* >>> * },* >>> "properties": { >>> "firstName": { >>> "id": "http://wso2jsonschema.org/firstName", >>> "type": "string" >>> }, >>> "phone": { >>> "id": "http://wso2jsonschema.org/phone", >>> "type": "array", >>> "items": [{ >>> * “value”:{* >>> * "id": >>> "http://wso2jsonschema.org/phone/phone >>> <http://wso2jsonschema.org/phone/phone>",* >>> * "type": "number"* >>> * },* >>> "attributes": { >>> "primary": { >>> "id": "http://wso2jsonschema.org/phone/primary", >>> "type": "boolean" >>> } >>> } >>> }] >>> } >>> } >>> } >>> >>> >>> >>> >>> >>> >>> >>> Sohani Weerasinghe >>> Software Engineer >>> WSO2, Inc: http://wso2.com >>> >>> Mobile : +94 716439774 >>> Blog :http://christinetechtips.blogspot.com/ >>> Twitter : https://twitter.com/sohanichristine >>> >>> On Mon, Apr 11, 2016 at 11:14 AM, Sohani Weerasinghe <soh...@wso2.com> >>> wrote: >>> >>>> Ok. For an xml like below, let's have the value field as follows >>>> >>>> <person> >>>> >>>> <firstName>xyz</firstName> >>>> >>>> <phone primary="true">071655339</phone> >>>> >>>> <phone primary="false">0112655333</phone> </person> >>>> </person> >>>> >>>> { >>>> >>>> "$schema": "http://json-schema.org/draft-04/schema#", >>>> >>>> "title": "person", >>>> >>>> "id": "http://wso2jsonschema.org", >>>> >>>> "type": "object", >>>> >>>> "properties": { >>>> >>>> "firstName": { >>>> >>>> "id": "http://wso2jsonschema.org/firstName", >>>> >>>> "type": "string" >>>> >>>> }, >>>> >>>> "phone": { >>>> >>>> "id": "http://wso2jsonschema.org/phone", >>>> >>>> "type": "array", >>>> >>>> "items": [{ >>>> >>>> * “value”:{* >>>> >>>> * "id": "http://wso2jsonschema.org/phone/phone >>>> <http://wso2jsonschema.org/phone/phone>",* >>>> >>>> * "type": "number"* >>>> >>>> * },* >>>> >>>> "attributes": { >>>> >>>> "primary": { >>>> >>>> "id": "http://wso2jsonschema.org/phone/primary", >>>> >>>> "type": "boolean" >>>> >>>> } >>>> >>>> } >>>> >>>> }] >>>> >>>> } >>>> >>>> } >>>> >>>> } >>>> >>>> >>>> >>>> Sohani Weerasinghe >>>> Software Engineer >>>> WSO2, Inc: http://wso2.com >>>> >>>> Mobile : +94 716439774 >>>> Blog :http://christinetechtips.blogspot.com/ >>>> Twitter : https://twitter.com/sohanichristine >>>> >>>> On Mon, Apr 11, 2016 at 11:05 AM, Nuwan Pallewela <nuw...@wso2.com> >>>> wrote: >>>> >>>>> Hi Sohani, >>>>> >>>>> +1 for the above approaches. >>>>> >>>>> We have to decide on how to represent non identical elements with same >>>>> name. Viraj is working on it. >>>>> >>>>> Thanks, >>>>> Nuwan >>>>> >>>>> On Mon, Apr 11, 2016 at 10:44 AM, Sohani Weerasinghe <soh...@wso2.com> >>>>> wrote: >>>>> >>>>>> Hi Viraj/Nuwan, >>>>>> >>>>>> Really appreciate your input on this >>>>>> >>>>>> Thanks, >>>>>> Sohani >>>>>> >>>>>> Sohani Weerasinghe >>>>>> Software Engineer >>>>>> WSO2, Inc: http://wso2.com >>>>>> >>>>>> Mobile : +94 716439774 >>>>>> Blog :http://christinetechtips.blogspot.com/ >>>>>> Twitter : https://twitter.com/sohanichristine >>>>>> >>>>>> On Tue, Apr 5, 2016 at 12:06 PM, Sohani Weerasinghe <soh...@wso2.com> >>>>>> wrote: >>>>>> >>>>>>> Hi All, >>>>>>> >>>>>>> This is regarding clarifying the $subject. >>>>>>> >>>>>>> If we consider an xml as below, we are currently generating the >>>>>>> below json schema >>>>>>> >>>>>>> <h:person xmlns:h="http://www.w3.org/TR/html4/"> >>>>>>> <firstName>susinda</firstName> >>>>>>> <phone primary="true">0717777771<ext>01</ext></phone> >>>>>>> <phone primary="false">0112655655<ext>01</ext></phone> >>>>>>> </h:person> >>>>>>> >>>>>>> >>>>>>> { >>>>>>> "$schema": "http://json-schema.org/draft-04/schema#", >>>>>>> "title": "h:person", >>>>>>> "id": "http://wso2jsonschema.org", >>>>>>> "type": "object", >>>>>>> "properties": { >>>>>>> "firstName": { >>>>>>> "id": "http://wso2jsonschema.org/firstName", >>>>>>> "type": "string" >>>>>>> }, >>>>>>> "phone": { >>>>>>> "id": "http://wso2jsonschema.org/phone", >>>>>>> "type": "array", >>>>>>> "items": [{ >>>>>>> "id": "http://wso2jsonschema.org/phone/0", >>>>>>> "type": "object", >>>>>>> "properties": { >>>>>>> "ext": { >>>>>>> "id": "http://wso2jsonschema.org/phone/0/ext", >>>>>>> "type": "number" >>>>>>> } >>>>>>> }, >>>>>>> "attributes": { >>>>>>> "primary": { >>>>>>> "id": "http://wso2jsonschema.org/phone/0/primary", >>>>>>> "type": "boolean" >>>>>>> } >>>>>>> } >>>>>>> }] >>>>>>> } >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> But the issue is, we don't have any field to define the data type >>>>>>> for phone ( eg: number). So are we going to introduce a new field as >>>>>>> below >>>>>>> to define the type? >>>>>>> >>>>>>> "phone": { >>>>>>> "id": "http://wso2jsonschema.org/phone", >>>>>>> "type": "array", >>>>>>> "items": [{ >>>>>>> "id": "http://wso2jsonschema.org/phone/0", >>>>>>> "type": "object", >>>>>>> "value":{ >>>>>>> type: "number", >>>>>>> .... >>>>>>> >>>>>>> } , >>>>>>> "properties": { >>>>>>> "ext": { >>>>>>> "id": "http://wso2jsonschema.org/phone/0/ext", >>>>>>> "type": "number" >>>>>>> } >>>>>>> }, >>>>>>> "attributes": { >>>>>>> "primary": { >>>>>>> "id": "http://wso2jsonschema.org/phone/0/primary", >>>>>>> "type": "boolean" >>>>>>> } >>>>>>> } >>>>>>> }] >>>>>>> } >>>>>>> >>>>>>> Please advice. >>>>>>> >>>>>>> Also, how are we going to represent an array which contains non >>>>>>> identical elements. Are we going to introduce xsi:type? >>>>>>> >>>>>>> Really appreciate your input in proceeding with this. >>>>>>> >>>>>>> Thanks, >>>>>>> Sohani >>>>>>> >>>>>>> Sohani Weerasinghe >>>>>>> Software Engineer >>>>>>> WSO2, Inc: http://wso2.com >>>>>>> >>>>>>> Mobile : +94 716439774 >>>>>>> Blog :http://christinetechtips.blogspot.com/ >>>>>>> Twitter : https://twitter.com/sohanichristine >>>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> ---------------------------------------------------------- >>>>> >>>>> *Nuwan Chamara Pallewela* >>>>> >>>>> >>>>> *Software Engineer* >>>>> >>>>> *WSO2, Inc. *http://wso2.com >>>>> *lean . enterprise . middleware* >>>>> >>>>> Email *nuw...@wso2.com <nuw...@wso2.com>* >>>>> Mobile *+94719079739 <%2B94719079739>@* >>>>> >>>>> >>>>> >>>> >>> >> > > _______________________________________________ > Dev mailing list > Dev@wso2.org > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- With regards, *Manu*ranga Perera. phone : 071 7 70 20 50 mail : m...@wso2.com
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev