From: <son...@gm...> - 2014-07-03 14:04:14
|
Thank you so much Tom! there only just one question left: Since the target system need to know the class type, i.e., ==> MyClass01Id is a MyClass01 How can I express this in dotnetrdf? son...@gm... From: Tomasz Pluskiewicz Date: 2014-07-01 21:53 To: dotNetRDF Developer Discussion and Feature Request Subject: Re: [dotNetRDF-Develop] Writing <rdf:about> as RDF/XML format On Tue, Jul 1, 2014 at 12:23 PM, son...@gm... <son...@gm...> wrote: > Thank you Tom! > > You are right, basically what I am trying to do is converting following > class: > ------------------------------------- > class MyClass01 { > public string Property01 {get; set;} > public MyClass02 myClass02 {get; set;} > } > //the instance of class has its own unique id > I strongly suggest that you think in terms of triples or graphs and not their serializaitions. So given an instance of MyClass01 you could have the following data <MyClass01Id> <hasProperty01> "the value of this property". <MyClass01Id> <hasMyClass02> <MyClass02Id> . This is all you need. These two triples would be stored the way you used in the earlier email (remember to use proper URIs). I know nothing about MyClass02 at this point, just the hypothetical id. It would add further similar triples Notice how this notation (NTriples/Turtle) removes any unnecessary syntactic clutter and leaves only the subjects, predicates and objects. > > ------------------------------------- > to this kind of text > ------------------------------------- > <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# > xmlns:KB="http://protege.stanford.edu/kb#"> > <KB:MyClass01 rdf:about="that unique id"> > <hasProperty01 >the value of this property</hasProperty01> > <MyClass02 rdf:about="the unique id"> > //MyClass02's content > </MyClass02> > </KB:EndToEndBlueprintRoot> > </rdf:RDF> > ------------------------------------- > You must keep in mind that with RDF/XML there are multiple ways to write the same document. It means that the structure can change, while the actual data doesn't. > > Also I have to use this kind of format because it is the input of another > system I have to use... > In memory you keep the data (triples) and dotNetRDF helps you save it in one of the RDF formats. If the other system requires that you use RDF/XML, that's fine but you could save it as Turtle or Notation3. > > Thank you again! > > ________________________________ > son...@gm... > > From: Tomasz Pluskiewicz > Date: 2014-07-01 10:13 > To: dotNetRDF Developer Discussion and Feature Request > Subject: Re: [dotNetRDF-Develop] Writing <rdf:about> as RDF/XML format > On Tue, Jul 1, 2014 at 7:44 AM, son...@gm... > <son...@gm...> wrote: >> Hi, all >> >> I am trying to write a RDF/XML like follows: >> ------------------------------------------------------- >> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" >> xmlns:KB="http://protege.stanford.edu/kb#"> >> <KB:EndToEndBlueprintRoot >> rdf:about="http://protege.stanford.edu/kb#DemoRootImagineID001"> >> xxxxx >> </KB:EndToEndBlueprintRoot> >> </rdf:RDF> >> ------------------------------------------------------- >> > > First of all this document is not a valid RDF/XML. > >> Here is my code >> ------------------------------------------------------- >> INode s = g.CreateUriNode("kb:"+"EndToEndBlueprintRoot"); >> INode p = g.CreateUriNode("rdf:about"); >> INode o = g.CreateUriNode("kb:"+"DemoRootImagineID001"); >> >> g.Assert(new Triple(s,p,o)); >> >> RdfXmlWriter rxw = new RdfXmlWriter(); >> string res = VDS.RDF.Writing.StringWriter.Write(g, rxw); >> ------------------------------------------------------- >> > > Secondly, the rdf:about is just a RDF/XML syntax feature and not a > predicate. It denotes that part of an RDF/XML document is grouped with > a common subject. Please read [1]. > > You should think in terms of triples, which define a relation > (predicate) between two objects (subjects and objects). That is much > like in natural language. > >> >> But only got this >> ------------------------------------------------------- >> <rdf:RDF xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" >> xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns="http://example.org/" >> xmlns:a="http://www.w3.org/1999/02/22-rdf-syntax-ns#" >> xmlns:kb="http://protege.stanford.edu/kb#" >> xmlns:ns0="http://www.w3.org/1999/02/22-rdf-syntax-ns#" >> xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> >> <rdf:Description rdf:about="&kb;EndToEndBlueprintRoot"> >> xxx >> <ns3:about xmlns:ns3="http://protege.stanford.edu/system#" >> rdf:resource="&kb;DemoRootImagineID001" /> >> </rdf:Description> >> </rdf:RDF> >> ------------------------------------------------------- >> >> Is my usage correct? or how can I output the format that I want? >> What is the appropriate writing of "rdf:about"? >> > > You probably mean kb:DemoRootImagineID001 as you subject, that is the > thing you want to describe in your document. Is that right? > > Please describe what kind of data you want your document to contain. > >> >> Any suggestion will be appreciated! >> >> ________________________________ >> son...@gm... >> > > Regards, > Tom > > [1] > http://stackoverflow.com/questions/7118326/differences-between-rdfresource-rdfabout-and-rdfid > > ------------------------------------------------------------------------------ > Open source business process management suite built on Java and Eclipse > Turn processes into business applications with Bonita BPM Community Edition > Quickly connect people, data, and systems into organized workflows > Winner of BOSSIE, CODIE, OW2 and Gartner awards > http://p.sf.net/sfu/Bonitasoft > _______________________________________________ > dotNetRDF-develop mailing list > dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > ------------------------------------------------------------------------------ > Open source business process management suite built on Java and Eclipse > Turn processes into business applications with Bonita BPM Community Edition > Quickly connect people, data, and systems into organized workflows > Winner of BOSSIE, CODIE, OW2 and Gartner awards > http://p.sf.net/sfu/Bonitasoft > _______________________________________________ > dotNetRDF-develop mailing list > dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > ------------------------------------------------------------------------------ Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft _______________________________________________ dotNetRDF-develop mailing list dot...@li... https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop |