RE: Defining a property to have an EMPTY range?

> Example: I would like to be able to "tag" a Document with a security
> classification, e.g.,
>
>    <Document>
>        <secret/>
>        <content>
>            ...
>        </content>
>    </Document>
>
> Note the <secret/> property.  Its purpose it simply to "tag" this
> Document as having a secret classification.

Think about what that would be in triples:

<DocumentURI> <secret> <EMPTY> .

Hardly seems correct. Indeed it isn't valid RDF/XML.
What's more the lack of the <secret/> element in the Document doesn't
preclude the possibility that it has the same status as one with a <secret/>
element (given RDFs open nature).

I think you are applying a XML document design technique to RDF/XML that
doesn't belong in RDF/XML.

One option is to continue to do so, in particular if RDF isn't the main
thing you are doing with this document. It would still be possible to
represent that a document has a confidentiality status of "secret" in RDF by
other means if necessary (perhaps at a different level in the application).

On the other hand if RDF is a major part of what you are doing here then
something like:

<Document>
 <secret>true</secret>
 <content>...</content>
</Document>

or

<Document>
 <securityLevel rdf:resource="http://someURI/security#secret"/>
 <content>...</content>
</Document>

might be more appropriate.

Received on Wednesday, 14 May 2003 08:50:48 UTC