Я изучаю RDF.Итак, у меня есть набор данных XML, и я должен преобразовать его в RDF N3 с XSLT.
Мой XML описывает набор коммерческих магазинов <Loja>
и набор продуктов <Modelo>
.У продуктов есть сущности <Loja>
, которые имеют идентификаторы магазинов, в которых они доступны, и количество единиц, доступных в этом магазине.
Пример моего XML:
<root>
<Lojas>
<Loja>
<ID>11</ID>
<Nome>Media Markt Aveiro</Nome>
<Grupo>Media Markt</Grupo>
<Morada>
<Detalhes>Aveiro Shopping Center</Detalhes>
<Rua>Estrada da Taboeira</Rua>
<CodigoPostal>3800-042</CodigoPostal>
<Distrito>Aveiro</Distrito>
<Pais>Portugal</Pais>
</Morada>
<Contacto>
<Telefone>+351 234 001 100</Telefone>
<Fax>+351 234 001 119</Fax>
<Email>clientes@mediamarkt.pt</Email>
<Website></Website>
</Contacto>
</Loja>
</Lojas>
<Produtos>
<Computadores>
<Modelo>
<ID>001</ID>
<Descricao>Vivobook Flip TP410UA-57DHDCB2</Descricao>
<Marca>Asus</Marca>
<Categoria>Comunicação Móvel</Categoria>
<Ram>8 Gb</Ram>
<Processador>i5-7200U 2.5GHz</Processador>
<CapacidadeDisco>256 GB</CapacidadeDisco>
<Grafica>HD Graphics 620</Grafica>
<TamanhoEcra>14.0</TamanhoEcra>
<Preco>799.00</Preco>
<Loja>
<ID>11</ID>
<Unidades>4</Unidades>
</Loja>
<Loja>
<ID>13</ID>
<Unidades>5</Unidades>
</Loja>
</Modelo>
</Computadores>
</Produtos>
</root>
My RDFN3 без префиксов:
@prefix loja: <http://www.shop.pt/loja/> .
@prefix morada: <http://www.shop.pt/morada/> .
@prefix contacto: <http://www.shop.pt/contacto/> .
@prefix modelo: <http://www.shop.pt/modelo/> .
@prefix modelo_em_loja: <http://www.shop.pt/modelo/loja/> .
@prefix computador: <http://www.shop.pt/computador/> .
loja:11
a loja: ;
loja:nome "Media Markt Aveiro" ;
loja:grupo "Media Markt" ;
loja:morada morada:11 ;
loja:contacto contacto:11 .
morada:11
a morada: ;
morada:detalhes "Aveiro Shopping Center" ;
morada:rua "Estrada da Taboeira" ;
morada:codigopostal "3800-042" ;
morada:distrito "Aveiro" ;
morada:pais "Portugal" .
contacto:11
a contacto: ;
contacto:telefone "+351 234 001 100" ;
contacto:fax "+351 234 001 119" ;
contacto:email "clientes@mediamarkt.pt" ;
contacto:website "" .
modelo:001
a computador: ;
modelo:descricao "Vivobook Flip TP410UA-57DHDCB2" ;
modelo:marca "Asus" ;
modelo:categoria "Comunicação Móvel" ;
modelo:ram "8 Gb" ;
modelo:processador "i5-7200U 2.5GHz" ;
modelo:capacidadedisco "256 GB" ;
modelo:grafica "HD Graphics 620" ;
modelo:tamanhoecra "14.0" ;
modelo:preco "799.00" ;
modelo:loja modelo_em_loja:00111 ,
modelo_em_loja:00113 .
modelo_em_loja:00111
modelo_em_loja:LojaID "11" ;
modelo_em_loja:unidades "4" .
modelo_em_loja:00113
modelo_em_loja:LojaID "13" ;
modelo_em_loja:unidades "5" .
Мне нужно мнение, правильно ли я это делаю или есть ли лучший способ.Например, должен ли я использовать анонимную сущность для описания:
modelo:001
modelo:loja modelo_em_loja:00111 ,
modelo_em_loja:00113 .
modelo_em_loja:00111
modelo_em_loja:LojaID "11" ;
modelo_em_loja:unidades "4" .
modelo_em_loja:00113
modelo_em_loja:LojaID "13" ;
modelo_em_loja:unidades "5" .