Jak określić zakres właściwości typu danych na xsd: ciągi znaków, których formuła literowa jest zgodna z [A-Z]? Ograniczenia OWL nie robią tego dla mnie, przynajmniej na pierwszy rzut oka. Czy można to zrobić za pomocą wyrażeń regularnych, a jeśli tak, to gdzie?ograniczyć xsd: ciąg do [A-Z] dla rdfs: zakres
Odpowiedz
Następujące wyrażenie w składni Manchester powinno załatwić sprawę:
string[pattern "A-Z"]
Można umieścić go prosto jak zakres danych w Protege. Nie jestem pewien, jakie konstruktory implementują konstrukcję, nigdy wcześniej jej nie używałam.
Więcej informacji na jej temat: http://www.w3.org/TR/owl2-manchester-syntax/#facet
Przypuszczam znaczy „literą”, który jest string[pattern "[A-Z]"]
.
Jeśli używasz protokołu Protege, wprowadź go w zakładce "Zakres danych".
HermiT 1.3.7 może to sprawdzić i podać wyjaśnienia dotyczące niespójnych wartości właściwości.
dziękuję, spróbuję tego – chile
Inne odpowiedzi wyjaśniły, że można to zrobić za pomocą aspektów XSD, aby ograniczyć zakres ciągów właściwości do tych pasujących do wzorca [A-Z]
, ale żaden nie pokazał wynikowego RDF. Stworzyłem bardzo prostą ontologię w Protégé i zdefiniowałem właściwość danych hasLatinInitial
. Jak inne opisane odpowiedzi, zakres został określony jako string[pattern "[A-Z]"]
. Potem stworzył indywidualny JohnDoe
i dodał twierdzenia własności danych, które
JohnDoe hasLatinInitial "J" .
JohnDoe hasLatinInitial "D" .
i pustelnik 1.3.7 rzeczywiście prowadził i nie zgłoszone niespójność. I dodaje twierdzenie
JohnDoe hasLatinInitial "3" .
i pustelnik 1.3.7 podano niespójność:
oto co powstały ontologia wygląda w N3 oraz w RDF/XML:
@prefix : <http://www.example.com/example#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix example: <http://www.example.com/example#> .
<http://www.example.com/example>
a owl:Ontology .
example:hasLatinInitial
a owl:DatatypeProperty ;
rdfs:range
[ a rdfs:Datatype ;
owl:onDatatype xsd:string ;
owl:withRestrictions
([ xsd:pattern "[A-Z]"
])
] .
example:JohnDoe
a owl:NamedIndividual ;
example:hasLatinInitial
"3" , "J" , "D"
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:example="http://www.example.com/example#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<owl:Ontology rdf:about="http://www.example.com/example"/>
<owl:DatatypeProperty rdf:about="http://www.example.com/example#hasLatinInitial">
<rdfs:range>
<rdfs:Datatype>
<owl:onDatatype rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<owl:withRestrictions rdf:parseType="Collection">
<rdf:Description>
<xsd:pattern>[A-Z]</xsd:pattern>
</rdf:Description>
</owl:withRestrictions>
</rdfs:Datatype>
</rdfs:range>
</owl:DatatypeProperty>
<owl:NamedIndividual rdf:about="http://www.example.com/example#JohnDoe">
<example:hasLatinInitial>3</example:hasLatinInitial>
<example:hasLatinInitial>D</example:hasLatinInitial>
<example:hasLatinInitial>J</example:hasLatinInitial>
</owl:NamedIndividual>
</rdf:RDF>
jest to bardzo pomocne, szczególnie część N3, ponieważ nie używam Protegé – chile
@chile Jeśli było to pomocne, możesz rozważyć [zaakceptowanie] (http: // meta. stackexchange.com/q/5234/225437), aby inni użytkownicy wiedzieli, że to zadziałało dla Ciebie, aby zmniejszyć liczbę pytań bez odpowiedzi oraz aby dać ci i Tobie kilka punktów reputacji. –
@JT dobrze, nie musiałem używać tego ograniczenia, więc nie wdrożyłem go i nie mogłem powiedzieć na pewno, która jest poprawna odpowiedź. W każdym razie twoje rozwiązanie wydaje mi się ciche. – chile
- 1. sowa: allValuesFrom i rdfs: zakres różnica
- 2. DBpedia SPARQL Zapytanie dla określonego rdfs: label
- 3. PowerShell: Jak ograniczyć ciąg do N znaków?
- 4. Jak ograniczyć ciąg do określonej długości?
- 5. XSD: jak ograniczyć liczbę znaków w atrybucie typu łańcucha?
- 6. Java do XSD lub XSD do Java
- 7. Android akceptuje tylko znaki między AZ i AZ
- 8. Narzędzie XML do XSD dla Linuksa
- 9. wyszukiwania SPARQL dla xsd: integer tylko brak dziesiętne
- 10. Jak określić zakres portów dla gniazd Java?
- 11. Ograniczenia XSD dotyczące atrybutu
- 12. XSD do XForms i XForms do XSD konwersji
- 13. Jak ograniczyć zakres dat jquery datepicker przez podanie dwóch dat?
- 14. Pojo do generacji xsd
- 15. Konwersja XSD do Protos
- 16. Jak ograniczyć JSpinnera
- 17. Arkusze kalkulacyjne Google: zmieniaj zakres, dodaj ciąg do każdego
- 18. Jak używać include we wbudowanym XSD, odwołującym się do innego osadzonego xsd?
- 19. CouchDB Group oraz kluczowy zakres
- 20. Zakres wartości do pseudokoloru
- 21. Programowo klasyfikuj klasę do xsd
- 22. Jak uzyskać CXF do generowania zewnętrznego XSD dla WSDL?
- 23. Jak przekonwertować xsd do czytelnej dla ludzi dokumentacji?
- 24. jak wymienić łaciński unicode charakter [AZ] znaków
- 25. bash dla pętli: zakres numerów
- 26. Python locals() dla zawierający zakres
- 27. Dozwolony zakres portów dla TCP
- 28. XSD Dla mapy witryny z HREFLANG
- 29. Jak ograniczyć JFileChooser do katalogu?
- 30. Sens "zakres" D (dla parametru)
D id Czy robisz z tym postęp? –