On Wed, Mar 23, 2016 at 7:51 PM, Awanthika Senarath <awanth...@wso2.com> wrote:
> Even though these arrays are identical, AFAIS they may occur independent, > > as in we may have 5 of the first array with the three items and 3 of the > other array which is completely unrelated to the first array, > > > In that case is it okey to represent them as a single array? > > according to [1] it seems like the xsi:type attribute is not just any > attribute but something similar to a key word in XML. in that case IMO it > is not correct to represent these two arrays as a merged array instance. > The xsi:type attribute is used to identify derived complex types[1]. In this example we have 2 <urn:sObjects> objects which have different xsi:types. (i.e one does not have a xsi:type but other one having xsi:type="urn1:Contact") Therefore these two are different objects even though it has same name. However by looking at the given xml we can not say that it's xsd would have <urn:sObjects> array or single element because in this example we have only one object from each. Shall we add and object of <urn:sObjects> and check? [1] - http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.wst.xmleditor.doc.user%2Ftopics%2Ftxsityp.html > > We need to consider xsi:type attribute as a keyword. I dont know how > viable this is though. > > > > > > [1] > http://stackoverflow.com/questions/21216778/how-to-define-xsitype-as-an-attribute-in-xml-schema > > Regards > Awanthika > > > > Awanthika Senarath > Software Engineer, WSO2 Inc. > Mobile: +94717681791 > > > > On Wed, Mar 23, 2016 at 7:17 PM, Sohani Weerasinghe <soh...@wso2.com> > wrote: > >> Hi All, >> >> If we consider the below xml, "urn:sObjects" is an array which contains >> elements which are not identical. >> >> First array contains AccountId, FirstName, LastName and the other array >> contains Name. >> >> <urn:create xmlns:urn="urn:enterprise.soap.sforce.com" >> xmlns:urn1="urn:sobject.enterprise.soap.sforce.com" xmlns:xsi=" >> http://www.w3.org/2001/XMLSchema-instance"> >> <urn:sObjects xsi:type="urn1:Contact"> <!--Zero or more >> repetitions:--> >> <!--You may enter ANY elements at this point--> >> <AccountId>001D000000HRzKD</AccountId> >> <FirstName>Jane</FirstName> >> <LastName>Doe</LastName> >> </urn:sObjects> >> <urn:sObjects xsi:type="urn1:Account"> >> <Name>Acme Rockets, Inc.</Name> >> </urn:sObjects> >> </urn:create> >> >> The generated json schema would be as follows >> >> { >> "$Schema":"http://json-schema.org/draft-04/schema#", >> "title":"urn:create", >> "id":"http://jsonschema.net", >> "type":"object", >> "properties":{ >> "urn:create":{ >> "id":"http://jsonschema.net/urn:create", >> "type":"object", >> "properties":{ >> "urn:sObjects":{ >> "id":"http://jsonschema.net/urn:create/urn:sObjects", >> "type":"array", >> "items":[ >> { >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0", >> "type":"object", >> "properties":{ >> "AccountId":{ >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0/AccountId", >> "type":"string" >> }, >> "@type":{ >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0/@type", >> "type":"string" >> }, >> "FirstName":{ >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0/FirstName", >> "type":"string" >> }, >> "LastName":{ >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0/LastName", >> "type":"string" >> } >> } >> }, >> { >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0", >> "type":"object", >> "properties":{ >> "@type":{ >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0/@type", >> "type":"string" >> }, >> "Name":{ >> "id":" >> http://jsonschema.net/urn:create/urn:sObjects/0/Name", >> "type":"string" >> } >> } >> } >> ] >> } >> } >> } >> }, >> "namespaces":[ >> { >> "prefix":"urn", >> "url":"urn:enterprise.soap.sforce.com" >> }, >> { >> "prefix":"xsi", >> "url":"http://www.w3.org/2001/XMLSchema-instance" >> }, >> { >> "prefix":"urn1", >> "url":"urn:sobject.enterprise.soap.sforce.com" >> } >> ] >> } >> >> >> I am facing an issue in representing this in the tree view. Are we going >> to add all 4 elements ( AccountId, FirstName, LastName and Name) under the >> array object? >> >> 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 >> > > -- *Susinda Perera* Software Engineer B.Sc.(Eng), M.Sc(Computer Science), AMIE(SL) Mobile:(+94)716049075 Blog: susinda.blogspot.com WSO2 Inc. http://wso2.com/ Tel : 94 11 214 5345 Fax :94 11 2145300
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev