|
From: Tomasz P. <tom...@gm...> - 2014-07-01 20:54:47
|
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
>
|