|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Should xlink:arcrole or xlink:role be the primary way to dispatchon
Jonathan Borden says - > > Using Ron's analysis, the arrow or arc connecting the document to its > related resources is named by the attribute xlink:arcrole. The xlink:role > defines another arrow between the related resource and its type. > > To me it seems most natural to have the most important, or primary way > to name a related resource as an arc from the RDDL document to the related > resource and that the xlink:arcrole be the name of this arc. > This isn't hard to sort out. Any link on any diagram ***should*** be labeled as to its purpose unless there is a clear convention for its use. This simple rule is often violated, so that people tend to ***think*** that they know what a link or arrow means when they often don't. We just have to get clear on what the label should be. Now, if you draw an arrow representing an xlink from one node to another, it should be labeled, even if you omit the label in practice for "simplicity". Whatever that label would be, that's the arcrole. What could be simpler? Jonathan said that the xlink:role could be represented by another arc. That's just going to be confusing. We don't want two arcs for one xlink, I don't think. If "arcrole" is the label at the middle of the arc, then "role" can be the label for the far end of the arc. According to section 5.5 of the xlink rec, role and arcrole are supposed to be absolute URIs, and the title attribute is there to provide for a human-readable description of the "the meaning of a link or resource". This could be ambiguous - do we title the purpose of the link or the nature of the resource pointed to? I say, title the purpose of the link, since that's the whole reason for having the xlink in the first place. This leaves the role. What should "xlink:role" be used for? What's left? The nature or purpose of the resource pointed to. Now for some examples, without syntax. I hope I've got the right idea here. Let's say that your document is supposed to import two schema fragments, have a main schema that imports the fragments, and finally be transformed using an xslt stylesheet. The stylesheet itself includes another stylesheet. You decide to point to all these resources using an rddl document. For the main schema: title='Main Schema' arcrole='urn:rddl:linkrole:xml-main-schema' role='urn:rddl:resourcetype:xsd-schema' (or use the schema namespace) For the two schema fragments: title = 'Imported Schema' arcrole='urn:rddl:linkrole:import-schema' role='urn:rddl:resourcetype:xsd-schema' (or use the schema namespace) For the main stylesheet: title='Main Stylesheet' arcrole='urn:rddl:linkrole:main-stylesheet' role='urn:rddl:resourcetype:xslt-stylesheet' (or use the xsl namespace) For the stylesheet to be included: title='Included Stylesheet' arcrole='urn:rddl:linkrole:included-xslt-stylesheet' role='urn:rddl:resourcetype:xslt-stylesheet' (or use the xsl namespace) This approach covers it all. The purpose of each xlink is given in human and machine form, the nature of the resource itself is indicated by the role attribute. In this example, we can clearly distinguish between the purpose and the nature of each resource, even when the same kind of resource is used for different purposes. Can you see how nicely this would lend itself to an authoring tool? The tool presents you with a list of known titles. You pick one, and the rddl generator inserts the appropriate arcrole and role attributes (or maybe gives you a choice of allowable resource types, such as RELAX or xml-schema). Sweet! Regards, Tom P
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








