From: <son...@gm...> - 2014-07-03 15:40:02
|
Thank you for the help but I am sorry that I still not very clear how to do the target system requires this format: ------------------------------------ <MyClass01 rdf:about="MyClass01ID"> xxx </MyClass01> ------------------------------------ How can i create this (not rdf:Description xxx)? Best Wishes son...@gm... From: Tomasz Pluskiewicz Date: 2014-07-03 15:21 To: dotNetRDF Developer Discussion and Feature Request Subject: Re: [dotNetRDF-Develop] Writing <rdf:about> as RDF/XML format In RDF this is a relation like any other. You state exactly what you described, that a resource is of a given type. And you declare that statement with a triple like any other fact about your resources. You use the predicate rdf:type [1]. There is a handy class called VDS.RDF.Parsing.RdfSpecsHelper, which contains the correct Uri of the rdf namespace. On Thu, Jul 3, 2014 at 4:03 PM, son...@gm... <son...@gm...> wrote: > 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 > > ------------------------------------------------------------------------------ > 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 |