[Nml-wg] id/idRef

Roman Łapacz romradz at man.poznan.pl
Thu Jul 19 05:40:51 EDT 2012


W dniu 2012-07-18 16:11, Aaron Brown pisze:
>
> On Jul 18, 2012, at 10:04 AM, Freek Dijkstra wrote:
>
>> On 18-07-2012 15:51, Roman Łapacz wrote:
>>
>>> To me IdRef is only for referencing/reusing or
>>> chaining existing elements. That's all. Without inheritance. Simple use
>>> case: a resource X is defined in a topology storage/service TS1. X is
>>> pointed in a topology storage/service TS2 (e.g. to describe multi-domain
>>> link). Use of IdRef for X in TS2 is very useful.
>>
>> So you want to use idRef ONLY for pointers to another document, or also
>> pointers within the same document?
>>
>> Again, why is it more useful than the use of id for X in TS2?
>>
>> In other words, in the following exactly, exactly what information is
>> missing (and hence, what information would like to add to RDF that is
>> now missing because RDF is missing the idRef)?
>>
>> <nml:BidirectionalLink id="urn:ogf:network:example.net:2012:mylink">
>> <nml:Link id="urn:ogf:network:example.net:2012:mylink-a-to-b" />
>> <nml:Link id="urn:ogf:network:example.net:2012:mylink-b-to-a" />
>> </nml:BidirectionalLink>
>> <nml:Link id="urn:ogf:network:example.net:2012:mylink-a-to-b">
>> <nml:name>A to B</nml:name>
>> </nml:Link>
>> <nml:Link id="urn:ogf:network:example.net:2012:mylink-b-to-a">
>> <nml:name>B to A</nml:name>
>> </nml:Link>
>>
>> Sorry to drag this on, but I think that the standard should not only say
>> it is useful, but also why it is useful, and how an implementation
>> should behave differently upon seeing idRef instead of id. (I presume
>> there is a difference in behaviour, otherwise they are the same thing
>> and one can be removed.)
>
> I think the difference is in saying "i've created a new element right 
> here with id X" vs. "i'm referencing an element with id X that is 
> defined elsewhere". I think this is where it dovetails with 
> inheritence. It's basically letting people know "i'm defining 0 or 
> more attributes about this element, but you need to go elsewhere to 
> find the rest of the attributes".
>

So far I haven't thought about inheritance while using idRef (only 
referencing)  but now I see it's interesting approach and may be useful.

Free: Again, why is it more useful than the use of id for X in TS2?
Presence of idRef indicates clearly that a parser has to find a 
definition somewhere else (in the same file or different storage, also 
different domain).


> e.g. in your example above. Let's say I'm parsing the 
> BidirectionalLink element. Did the Link elements get defined inline, 
> or do I need to look up their definitions elsewhere (possibly in the 
> same document, possibly in some other document)? What if they're 
> partially defined (e.g. the name and possibly other attributes are 
> included, but not bandwidth)? Does the bandwidth attribute that I'm 
> looking for not exist, or should I try to find it in a definition 
> elsewhere?

Right. Does an empty element with id mean that it is created in a wrong 
way or relevant content is somewhere else? idRef says clearly that 
definition is somewhere else.

Roman

>
> Cheers,
> Aaron
>
>>
>> Freek
>>
>> _______________________________________________
>> nml-wg mailing list
>> nml-wg at ogf.org <mailto:nml-wg at ogf.org>
>> https://www.ogf.org/mailman/listinfo/nml-wg
>
> ESCC/Internet2 Joint Techs
> July 15-19, 2012 - Palo Alto, California
> Hosted by Stanford University
> http://events.internet2.edu/2012/jt-stanford/
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ogf.org/pipermail/nml-wg/attachments/20120719/32fa9696/attachment.html>


More information about the nml-wg mailing list