RuleML / issues-ruleml

A repository solely for RuleML issues. No schemas or documents should be committed here.
3 stars 3 forks source link

CURIES for Resource Identifier Attribute Option 4 #51

Closed greenTara closed 9 years ago

greenTara commented 9 years ago

Implement http:// wiki.ruleml.org/index.php/CURIES_for_Resource_Identifier_Attribute#Option_4

greenTara commented 9 years ago

The current definition of the @iri attribute is:

iri.attrib.def =
## An attribute for referring to a IRI.
## See http://www.ruleml.org/1.0/glossary/#gloss-@iri
attribute iri { iri.value }
iri.value |= xsd:anyURI

=>

iri.attrib.def =
## An attribute for referring to a IRI.
## See http://www.ruleml.org/1.0/glossary/#gloss-@iri
attribute iri { iri.value }
iri.value |= iri.datatype
iri.datatype |= AbsIRI.datatype

and in a separate module (e.g. datatypes_...)

AbsIRI.datatype = xsd:string{pattern = "[\i-[:]][\c-[:]]+:.+"}
CURIE.datatype = xsd:string{pattern = "(([\i-[:]][\c-[:]]*)?:)?(/[^\s/][^\s]*|[^\s/][^\s]*|[^\s]?)"
                                              minLength = "1"}
PrefixedCURIE.datatype =  xsd:string{pattern = "(([\i-[:]][\c-[:]]*)?:)(/[^\s/][^\s]*|[^\s/][^\s]*|[^\s]?)"
                                              minLength = "1"}

and in yet another module (e.g. curie_

iri.datatype |= PrefixedCURIE.datatype

The curie modules should be included first to indicated precedence.

greenTara commented 9 years ago

The trick of using node="?x" to query for the node label will not work in the new content model. Instead, a blank node CURIE can be used

node="_:?x"
greenTara commented 9 years ago

The UServ entry from the 2014 Rulebase competition has a Rel with an iri attribute with an empty string. This no longer satisfies the content model. I am not quite sure what the replacement should be, but it is probably a typo, as all other Rels have a repetition of the local name in the iri attribute.

greenTara commented 9 years ago

closed by commit https://github.com/RuleML/deliberation-ruleml/commit/c9b4af0be9c8827acde5890d71cf158f5d11fbe8