Uporządkowane dane dotyczące działań związanych z książkami (Book
)
Działania związane z książkami sprawiają, że wyszukiwarka Google staje się miejscem odkrywania książek i autorów. Dzięki temu użytkownicy wyszukiwarki mogą szybko kupić lub wypożyczyć znalezione pozycje bezpośrednio z poziomu wyników wyszukiwania.
Na przykład po wpisaniu Pajęczyna Szarloty użytkownik może zobaczyć wyniki, które umożliwiają kupienie lub wypożyczenie książki. Jeśli jesteś dostawcą książek, możesz przekazać do Google plik danych z opisanym tu schematem uporządkowanych danych. Zawarte w naszej specyfikacji elementy ReadAction
umożliwiają użytkownikom kupienie książki, a BorrowAction
– jej wypożyczenie.
![Działania związane z książkami w wynikach wyszukiwania](https://developers-dot-devsite-v2-prod.appspot.com/static/search/docs/images/books01.png?authuser=0000&hl=pl)
Działania związane z czytaniem i działania związane z wypożyczaniem, które są zintegrowane z panelami, powodują wyświetlanie opcji zakupu lub wypożyczenia książki. Dzięki podanym przez Ciebie linkom działania związane z czytaniem i działania związane z wypożyczaniem odsyłają użytkowników bezpośrednio z panelu wiedzy i innych usług Google na stronę książki w Twojej witrynie lub aplikacji.
Kolejność dostawców w panelu wiedzy jest dostosowana indywidualnie do każdego użytkownika i może się zmieniać. Oznacza to, że użytkownicy widzą wyniki w różnej kolejności. Co więcej, kolejność dostawców wyświetlanych danemu użytkownikowi może się zmieniać za każdym razem. Na kolejność może wpłynąć wiele różnych czynników. Jeśli na przykład użytkownik kliknie w panelu wiedzy link danego dostawcy, jest bardziej prawdopodobne, że ten dostawca zostanie wyświetlony na wyższej pozycji. Kolejności nie można kontrolować.
Pierwsze kroki
Aby zaimplementować działania związane z książkami, musisz utworzyć plik danych zgodnie z definicjami typów uporządkowanych danych używanych w przypadku tych działań. Najpierw jednak zapoznaj się z tymi sekcjami:
- Wytyczne
- Tworzenie pliku danych
- Testowanie pliku danych za pomocą narzędzia do weryfikacji pliku danych
- Hostowanie pliku danych
- Przesyłanie pliku danych do sprawdzenia
- Aktualizowanie pliku danych według potrzeb
Wytyczne
Aby zadbać o prawidłowe wyświetlanie książek w wyszukiwarce, musisz znać podstawowe pojęcia i ważne szczegółowe informacje. Pamiętaj, że Twój plik danych musi być zgodny ze specyfikacją standardowego formatu.
Przestrzegaj ogólnych wytycznych dotyczących uporządkowanych danych i Podstawowych zasad wyszukiwania oraz tych wytycznych:
Utwory i wydania
W tej dokumentacji w odniesieniu do książek używamy 2 różnych terminów:
- Utwór: abstrakcyjna koncepcja książki. Atrybutami utworu są takie metadane jak tytuł, autor czy język oryginału.
- Wydanie: wszystkie istniejące egzemplarze książki pochodzące z jednego składu drukarskiego. Atrybutami wydania są takie metadane jak rok publikacji, nazwa wydania czy numer ISBN (międzynarodowy znormalizowany numer książki).
Na przykład Pajęczyna Szarloty to utwór, ale egzemplarze pochodzące z jakiegokolwiek składu drukarskiego to wydanie. Utwór Pajęczyna Szarloty może być dostępny jako wydanie 1, wydanie 2, wydanie skrócone, wydanie w tłumaczeniu na język francuski itd.
To rozróżnienie jest szczególnie ważne w przypadku pliku danych, w którym może nie być to oczywiste. Istnieją 2 elementy Book
:
Book
(Work
) jest elementemBook
najwyższego poziomu:workExample
to właściwość elementuWork
, która określa tylko 1 wystąpienieBook
(Edition
).- W przypadku każdego elementu
Work
musi zostać podana co najmniej 1 właściwośćworkExample
.
Book
(Edition
) jest elementemBook
niższego poziomu.
Warto pamiętać, że utwór może mieć wiele wydań. Zalecamy, by w miarę możliwości je grupować. Dzięki temu systemy Google mogą wykorzystać wszystkie istotne informacje o książce i wyświetlić je w wyszukiwarce. Jeśli to konieczne, możesz podzielić wydania na kilka rekordów utworu, ale każdy z nich musi zawierać:
- inną właściwość
@id
, - co najmniej 1 wydanie z numerem ISBN lub innym obsługiwanym identyfikatorem.
Systemy bibliotek i ich oddziały
Library entity
to typ elementu Library
najwyższego poziomu. Jest to abstrakcyjny konstrukt, który składa się z elementu LibrarySystem
i każdego elementu Library (member)
niższego poziomu danego systemu bibliotek.
Element LibrarySystem
jest abstrakcyjny i odpowiada wspólnej sieci oddziałów biblioteki. Na przykład Miejska Biblioteka Publiczna we Wrocławiu może zostać określona jako element LibrarySystem
. Według strony wrocławskiej biblioteki miejskiej jest to system bibliotek publicznych działający we Wrocławiu, stolicy Dolnego Śląska. Składa się on z 40 filii lub oddziałów.
Każdy element LibrarySystem
musi zawierać co najmniej 1 element Library (member)
, nawet jeśli w rzeczywistości biblioteka nie jest częścią żadnego systemu bibliotek. W takiej sytuacji, aby umożliwić implementację działań związanych z książkami, biblioteka jest jedynym oddziałem własnego systemu. Na potrzeby implementacji działań związanych z książkami oddział biblioteki, w przeciwieństwie do jej systemu, nie jest abstrakcyjny i ma konkretny adres.
I na odwrót – każdy element Library (member)
musi należeć do co najmniej 1 elementu LibrarySystem
.
ISBN i inne obsługiwane identyfikatory
ISBN to główny sygnał uzgodnienia otrzymywany, gdy wyszukiwarka Google dopasuje dane z pliku danych do danych Google. Musisz podać numer ISBN lub inny obsługiwany identyfikator w przypadku wszystkich książek, które mają się wyświetlać w wynikach wyszukiwania. Jeśli tego nie zrobisz, prawdopodobnie nie uda się dopasować i w konsekwencji wyświetlić Twoich książek.
Preferowanym przez wyszukiwarkę Google numerem jest ISBN-13, ale możesz też podać:
- numer OCLC (Online Computer Library Center),
- numer LCCN (Library of Congress Control Number),
- e-kod JP.
Linki
Aby użytkownicy mogli łatwo znaleźć Twoje książki, zadbaj o to, by linki w pliku danych były zgodne z tymi wytycznymi:
- Jeśli masz zduplikowane strony zawierające te same treści, pamiętaj, by użyć kanonicznego adresu URL z tytułem książki i innymi informacjami o niej.
- Po kliknięciu linku działania związanego z czytaniem lub działania związanego z wypożyczaniem użytkownik powinien trafić na stronę, która umożliwia bezpośredni zakup lub wypożyczenie książki. Linki działań nie mogą wskazywać stron z kolejnymi linkami, które trzeba kliknąć, by kupić lub wypożyczyć daną treść. Nie należy na przykład przekierowywać użytkowników na stronę wyników wyszukiwania ani stronę z podsumowaniem wiadomości o produkcie.
Tworzenie pliku danych
Jeśli w swojej witrynie sprzedajesz książki, musisz przesłać plik danych Book
. Skontaktuj się z przedstawicielem Google i dowiedz się, jak i na jaki adres przesłać plik danych.
Jeśli w swojej witrynie wypożyczasz książki, musisz przesłać 2 osobne pliki danych: Book
i Library
. Skontaktuj się z przedstawicielem Google i dowiedz się, jak i na jaki adres przesłać pliki danych.
Przestrzegaj wymagań dotyczących rozmiaru, ilości i formatu pliku danych
Oto obowiązujące wymagania:
- Wymagania dotyczące rozmiaru pliku danych:
- Rozmiar nieskompresowanego pliku danych nie może przekraczać 1 GB.
- Oznacza to, że plik danych, który ma zostać skompresowany, musi być mniejszy niż 1 GB. Jeśli jest większy, musisz podzielić go na kilka mniejszych plików.
- Możesz skompresować pliki danych do formatu ZIP, GZ, TAR, TAR.GZ, JAR, AR, ARJ, CPIO lub innego formatu zrzutu archiwum.
- Jeśli masz kilka plików danych, możesz je przesłać w niezmienionej postaci lub dodać do pliku indeksu mapy witryny.
- Pojedyncze pliki danych muszą mieć rozszerzenie nazwy pliku
.json
.
Przestrzegaj wymagań dotyczących treści pliku danych
Zwróć szczególną uwagę na te wymagania dotyczące treści pliku danych:
- Plik danych nie może zawierać nieaktualnych elementów. Są to elementy, które nie są już dostępne w witrynie lub mają właściwość
availabilityEnds
ustawioną na datę z przeszłości. - Wszystkie precyzyjne linki, takie jak
urlTemplate
, i wszystkie adresy URL, takie jakurl
, które uwzględniasz w pliku danych, muszą być produkcyjnymi wersjami adresów URL. Nie używaj nieprodukcyjnych adresów URL wykorzystywanych na przykład podczas kontroli jakości lub programowania. - Wszystkie adresy URL, takie jak
url
, muszą być kanoniczne. - Każdy element w pliku danych musi określać te właściwości:
- unikalny identyfikator:
@id
, - unikalny adres URL:
url
, - unikalny precyzyjny link:
urlTemplate
.
- unikalny identyfikator:
Testowanie pliku danych za pomocą narzędzia do weryfikacji pliku danych
Zalecamy wykonanie opisanych poniżej czynności, by za pomocą narzędzia do weryfikacji pliku danych naprawić typowe błędy i zakończyć ostrzeżenia:
-
Sprawdź, czy w polu Validate on: (Zweryfikuj) jest wybrana odpowiednia opcja. W przypadku elementu
Book
wybierz Książki . - Sprawdź, czy wartość
@type
jest poprawnie zapisana. - Sprawdź, czy wartość
@context
jest prawidłowo ustawiona. W przypadkuReadAction
iBorrowAction
ustaw"@context": "https://schema.org"
.
Hostowanie pliku danych
Gdy Twój plik danych będzie gotowy, umieść go w bezpiecznej lokalizacji. Google regularnie pobiera plik danych, by mieć pewność, że jego treść jest aktualna.
Metody hostowania
Oto obsługiwane metody hostowania pliku danych:
Hosting | Obsługa uwierzytelniania | |
---|---|---|
Google Cloud Storage | Uprawnienia wyświetlającego obiekty Cloud Storage | |
HTTPS | Nazwa użytkownika + hasło lub certyfikaty klienta HTTP | |
SFTP | Hasło, klucz + wyrażenie lub oba te elementy | |
AWS S3 | Identyfikator klucza + klucz dostępu |
Przesyłanie pliku danych do sprawdzenia
Aby Twoje treści były dostępne w wyszukiwarce Google, zespół pomocy Google musi sprawdzić jakość precyzyjnych linków w Twoim pliku danych. Zdecydowanie zalecamy ręczne przetestowanie niektórych precyzyjnych linków. W ten sposób upewnisz się, czy rzeczywiście przekierowują na stronę, na której użytkownicy mogą kupować lub wypożyczać książki.
W swojej prośbie o sprawdzenie pliku danych podaj te informacje:
- Lokalizacja hosta: adres URL pliku danych.
- Uwierzytelnianie hosta (jeśli jest używane): dane uwierzytelniające, dzięki którym Google może pobrać plik danych z Twojej lokalizacji hosta.
Aktualizowanie pliku danych według potrzeb
Chociaż zalecamy codzienne aktualizowanie pliku danych, ostatecznie zależy to od tego, jak często zmienia się Twój katalog. Zapoznaj się z tymi uwagami i wskazówkami:
- Wyszukiwarka Google nie obsługuje aktualizacji w czasie rzeczywistym.
- Wyszukiwarka Google pobiera plik danych raz dziennie i zwykle indeksuje jego zawartość w ciągu 2 dni.
- Jeśli w dostępności wydania zachodzi dająca się przewidzieć zmiana, użyj właściwości
availabilityStarts
iavailabilityEnds
, aby ustawić dokładne daty. Jeśli element nie jest już dostępny, usuń go całkowicie.
Definicje typów uporządkowanych danych
Aby treści mogły się wyświetlać w uporządkowanych wynikach wyszukiwania, musisz w nich uwzględnić wymienione poniżej wymagane właściwości. Możesz też dodać właściwości zalecane, by wzbogacić informacje o treściach i zwiększyć w ten sposób wygodę użytkowników.
Element DataFeed
Każdy przesłany do Google plik danych schema.org musi zawierać 1 element DataFeed
poziomu głównego. Wszystkie elementy Book
i Library
muszą być wymienione w polu dataFeedElement
elementu DataFeed
.
Właściwości obsługiwane przez Google:
Właściwości wymagane | |
---|---|
@context |
Ustaw jako: |
@type |
Ustaw jako: |
dataFeedElement |
Ustaw jako pojedynczy element Przykład użycia w pliku danych { "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "Book", "@id": "https://example.com/work/the_catcher_in_the_rye", "url": "https://example.com/work/the_catcher_in_the_rye", "name": "The Catcher in the Rye", "author": { "@type": "Person", "name": "J.D. Salinger" }, "sameAs": "https://en.wikipedia.org/wiki/The_Catcher_in_the_Rye", "workExample": [ { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_paperback", "isbn": "9787543321724", "bookEdition": "Mass Market Paperback", "bookFormat": "https://schema.org/Paperback", "inLanguage": "en", ... }, ... ] } ], "dateModified": "2018-09-10T13:58:26.892Z" } Przykład użycia w pliku danych { "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "LibrarySystem", "@id": "https://example.com/library-systems/100", "name": "Santa Clara County Library District", "additionalProperty": [ { "@type": "PropertyValue", "name": "librarytype", "value": "public" } ], ... }, ... ], "dateModified": "2018-09-10T13:58:26.892Z" } |
dateModified |
Data i godzina ostatniej aktualizacji pliku danych podana w formacie ISO 8601. |
Element Book
Pełną definicję elementów Book
znajdziesz na schema.org/Book. Najważniejsze są jednak tylko poniższe właściwości. W przypadku każdej książki, którą chcesz uwzględnić w pliku danych, musisz określić wymagane właściwości. Możesz też zdefiniować właściwości zalecane, by wzbogacić informacje i zwiększyć w ten sposób wygodę użytkowników.
Book
(Work
)
Ten element Book
jest typem elementu najwyższego poziomu. Odpowiada on utworowi.
Właściwości obsługiwane przez Google:
Właściwości wymagane | |
---|---|
@context |
Ustaw jako: |
@id |
Unikalny globalnie identyfikator książki w formacie URL. Identyfikator musi być stosowany wyłącznie w Twojej organizacji. Ten identyfikator musi być stały i nie może zmieniać się w czasie. Format adresu URL jest zalecany, ale nie wymagany. Nie musi to być działający link. Domena użyta w wartości |
@type |
Ustaw jako: |
author |
Autor lub autorzy książki. |
name |
Tytuł książki. |
url |
Adres URL w Twojej witrynie, pod którym przedstawiono lub opisano daną książkę. Ten link pomaga dokładnie uzgodnić zawartość Twojego pliku danych z zawartością baz danych Google. Adres URL może być taki sam jak W przypadku rzeczywistej strony docelowej wyszukiwarka Google użyje adresu URL podanego w |
workExample |
Wydanie lub wydania danego utworu. |
Właściwości zalecane | |
---|---|
sameAs |
Adres URL strony referencyjnej, która identyfikuje utwór. Może to być na przykład strona o danej książce w Wikipedii, Wikidata, VIAF lub amerykańskiej Bibliotece Kongresu. |
Book
(Edition
)
Właściwość workExample
używa tego elementu Book
. Odpowiada on wydaniu danego utworu.
Właściwości obsługiwane przez Google:
Właściwości wymagane | |
---|---|
@id |
Unikalny globalnie identyfikator książki w formacie URL. Identyfikator musi być stosowany wyłącznie w Twojej organizacji. Ten identyfikator musi być stały i nie może zmieniać się w czasie. Format adresu URL jest zalecany, ale nie wymagany. Nie musi to być działający link. Domena użyta w wartości |
@type |
Ustaw jako: |
bookFormat |
Format wydania. Musi mieć jedną z tych wartości:
|
inLanguage |
Główny język treści danego wydania. Użyj jednego z dwuliterowych kodów z listy kodów ISO 639-1 alpha-2. |
isbn |
Numer ISBN-13 wydania. Jeśli masz numer ISBN-10, przekonwertuj go na ISBN-13. |
potentialAction |
Działanie, które ma zostać wywołane, by użytkownicy mogli kupić lub pobrać książkę. Więcej informacji znajdziesz w opisie właściwości |
Właściwości zalecane | |
---|---|
author |
Autor lub autorzy wydania. |
bookEdition |
Informacje o wydaniu książki. Na przykład: |
datePublished |
Data publikacji wydania w formacie YYYY-MM-DD lub YYYY. Może to być konkretna data lub tylko konkretny rok. |
identifier |
Zewnętrzny lub inny identyfikator, który jednoznacznie określa wydanie. Dozwolonych jest kilka identyfikatorów. Więcej informacji znajdziesz w sekcji Ta właściwość może być powtarzana. |
name |
Tytuł wydania. Używaj tej właściwości tylko wtedy, gdy tytuł wydania różni się od tytułu utworu. |
sameAs |
Adres URL referencyjnej strony internetowej, który jednoznacznie identyfikuje wydanie. Na przykład strona w Wikipedii poświęcona temu konkretnemu wydaniu. Nie używaj ponownie właściwości |
url |
Adres URL w Twojej witrynie, pod którym przedstawiono lub opisano dane wydanie. Może być taki sam jak |
Przykładowy element Book
(Edition
):
"workExample": { "@type": "Book", "@id": "https://example.com/book/100", "inLanguage": "en", "isbn": "9787543321724", "bookEdition": "20 Anniversary Edition", "datePublished": "2000-02-26", "bookFormat": "https://schema.org/Hardcover", "potentialAction": {...} }
Przykładowy element Book
(Edition
) z kilkoma właściwościami workExample
:
"workExample": [ { "@type": "Book", "@id": "https://example.com/book/200", "inLanguage": "zh", "isbn": "9787543321721", "bookEdition": "2nd Edition", "bookFormat": "https://schema.org/Hardcover", "potentialAction": {...} }, { "@type": "Book", "@id": "https://example.com/book/300", "inLanguage": "zh", "isbn": "9787543321722", "bookEdition": "1st Edition", "bookFormat": "https://schema.org/EBook", "potentialAction": {...} } ]
Person
lub Organization
(author
)
Właściwość author
książki korzysta z elementu Person
lub Organization
.
Właściwości wymagane | |
---|---|
@type |
Ustaw jako |
name |
Imię i nazwisko osoby lub nazwa organizacji. |
Właściwości zalecane | |
---|---|
sameAs |
URL referencyjnej strony internetowej, który jednoznacznie określa osobę lub organizację. Na przykład strona w Wikipedii poświęcona danej osobie lub organizacji. |
Przykładowy element author
:
"author": { "@type": "Person", "name": "William Shakespeare" }
Przykładowy element author
z kilkoma właściwościami:
"author": [ { "@type": "Person", "name": "William Shakespeare" }, { "@type": "Person", "name": "Victor Hugo", "sameAs": "https://en.wikipedia.org/wiki/Victor_Hugo" } ]
PropertyValue (identifier)
Właściwość identifier
elementu Edition
korzysta z elementu PropertyValue
.
Właściwości wymagane | |
---|---|
@type |
Ustaw jako: |
propertyID |
Typ identyfikatora. Zgodnie z opisem w sekcji ISBN i inne obsługiwane identyfikatory musi to być jeden z tych numerów:
|
value |
Wartość identyfikatora. Zewnętrzny identyfikator jednoznacznie wskazujący dane wydanie. Usuń wszystkie nienumeryczne prefiksy zewnętrznego identyfikatora. |
Przykładowy element identifier
:
"identifier": { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "110123456" }
Przykładowy element identifier
z kilkoma właściwościami:
"identifier": [ { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "110123456" }, { "@type": "PropertyValue", "propertyID": "LCCN", "value": "220123456" },{ "@type": "PropertyValue", "propertyID": "JP_E-CODE", "value": "12345678901234567890" }]
Przykładowy plik danych ReadAction
Book
w formacie JSON
{ "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "Book", "@id": "https://example.com/work/the_catcher_in_the_rye", "url": "https://example.com/work/the_catcher_in_the_rye", "name": "The Catcher in the Rye", "author": { "@type": "Person", "name": "J.D. Salinger" }, "sameAs": "https://en.wikipedia.org/wiki/The_Catcher_in_the_Rye", "workExample": [ { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_paperback", "isbn": "9787543321724", "bookEdition": "Mass Market Paperback", "bookFormat": "https://schema.org/Paperback", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_paperback", "datePublished": "1991-05-01", "identifier": { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "1057320822" }, "potentialAction": { "@type": "ReadAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/store/9787543321724", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] }, "expectsAcceptanceOf": { "@type": "Offer", "category": "purchase", "price": 6.99, "priceCurrency": "USD", "availabilityStarts": "2020-01-01T11:0:00-04:00", "availabilityEnds": "2050-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "US" } } } }, { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "isbn": "9780316769532", "bookEdition": "Hardcover", "bookFormat": "https://schema.org/Hardcover", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "datePublished": "1951-07-16", "potentialAction": { "@type": "ReadAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/store/9780316769532", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] }, "expectsAcceptanceOf": [ { "@type": "Offer", "category": "nologinrequired", "availabilityStarts": "2020-01-01T11:0:00-04:00", "availabilityEnds": "2050-06-30T23:59:00-04:00", "eligibleRegion": [ { "@type": "Country", "name": "US" }, { "@type": "Country", "name": "GB" } ] }, { "@type": "Offer", "category": "Subscription", "availabilityStarts": "2020-01-01T11:0:00-04:00", "availabilityEnds": "2050-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "IN" } } ] } } ] } ], "dateModified": "2018-09-10T13:58:26.892Z" }
Przykładowy plik danych BorrowAction
Book
w formacie JSON
{ "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "Book", "@id": "https://example.com/work/the_catcher_in_the_rye", "url": "https://example.com/work/the_catcher_in_the_rye", "name": "The Catcher in the Rye", "author": { "@type": "Person", "name": "J.D. Salinger" }, "sameAs": "https://en.wikipedia.org/wiki/The_Catcher_in_the_Rye", "workExample": [ { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_paperback", "isbn": "9787543321724", "bookEdition": "Mass Market Paperback", "bookFormat": "https://schema.org/Paperback", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_paperback", "datePublished": "1991-05-01", "identifier": { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "1057320822" }, "potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrowpurchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } } }, { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "isbn": "9780316769532", "bookEdition": "Hardcover", "bookFormat": "https://schema.org/Hardcover", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "datePublished": "1951-07-16", "potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": [ { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrowpurchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform" ] }, { "@type": "EntryPoint", "urlTemplate": "https://example.com/mobile/borrowpurchase?bookId=170", "actionPlatform": [ "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } ] } } ] } ], "dateModified": "2018-09-10T13:58:26.892Z" }
ReadAction
(potentialAction
)
Właściwość potentialAction
korzysta z elementu ReadAction
.
ReadAction
określa precyzyjne linki umożliwiające dostęp do książki, a także sprzedawcę książki oraz kryteria, jakie muszą spełniać użytkownicy. Te kryteria mogą obejmować stan członkostwa, stan logowania, lokalizację lub inne informacje wymagane do uzyskania dostępu do książki.
Właściwości wymagane | |
---|---|
@type |
Ustaw jako: |
expectsAcceptanceOf |
Definicja wymagań, jakie musi spełnić użytkownik, by mieć dostęp do tego elementu. Jeśli istnieje kilka właściwości Ta właściwość może być powtarzana. |
expectsAcceptanceOf.@type |
Ustaw jako: |
expectsAcceptanceOf.category |
Typ elementu
|
expectsAcceptanceOf.eligibleRegion |
Kraj, w którym można stosować element Ta właściwość może być powtarzana. |
expectsAcceptanceOf.eligibleRegion.@type |
Ustaw jako: |
expectsAcceptanceOf.eligibleRegion.name |
Kod kraju w formacie ISO 3166-1 alpha-2. |
target |
Specyfikacja precyzyjnego linku z informacjami o obsługiwanej platformie. Kilka właściwości Ta właściwość może być powtarzana. |
target.@type |
Ustaw jako: |
target.actionPlatform |
Platformy, w przypadku których dany precyzyjny link jest prawidłowy. Użyj jednej z tych wartości:
Ta właściwość może być powtarzana. |
target.urlTemplate |
Link prowadzący użytkowników bezpośrednio do treści strony docelowej książki. |
Właściwości zalecane | |
---|---|
expectsAcceptanceOf.availabilityEnds |
Godzina zakończenia okresu dostępności. Pozwala określić dokładny dzień i godzinę, kiedy dana książka przestanie być widoczna dla użytkowników. |
expectsAcceptanceOf.availabilityStarts |
Godzina rozpoczęcia okresu dostępności. Pozwala określić dokładny dzień i godzinę, kiedy dana książka zacznie być widoczna dla użytkowników. |
expectsAcceptanceOf.price |
Cena zakupu książki. Ta właściwość jest wymagana, gdy element |
expectsAcceptanceOf.priceCurrency |
Waluta, w której podano cenę, przedstawiona w trzyliterowym formacie ISO 4217. |
Przykładowy element ReadAction
:
"potentialAction": { "@type": "ReadAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/purchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] }, "expectsAcceptanceOf": { "@type": "Offer", "category": "purchase", "price": "9.99", "priceCurrency": "USD", "availabilityStarts": "2018-04-01T11:01:00-04:00", "availabilityEnds": "2018-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "US" } } }
Przykładowy element ReadAction
z kilkoma właściwościami EntryPoint
:
"potentialAction": { "@type": "ReadAction", "target": [ { "@type": "EntryPoint", "urlTemplate": "https://example.com/purchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform" ] }, { "@type": "EntryPoint", "urlTemplate": "https://example.com/mobile/purchase?bookId=170", "actionPlatform": [ "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } ], "expectsAcceptanceOf": [ { "@type": "Offer", "category": "noLoginRequired", "availabilityStarts": "2018-04-01T11:01:00-04:00", "availabilityEnds": "2018-06-30T23:59:00-04:00", "eligibleRegion": [ { "@type": "Country", "name": "US" }, { "@type": "Country", "name": "GB" } ] }, { "@type": "Offer", "category": "Subscription", "availabilityStarts": "2018-04-01T11:01:00-04:00", "availabilityEnds": "2018-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "IN" } } ] }
BorrowAction
(potentialAction
)
Właściwość potentialAction
korzysta z elementu BorrowAction
.
BorrowAction
określa precyzyjne linki umożliwiające dostęp do książki, a także bibliotekę, w której znajduje się dana książka, oraz kryteria, jakie muszą spełniać użytkownicy. Te kryteria mogą obejmować stan członkostwa, stan logowania, lokalizację lub inne informacje wymagane do uzyskania dostępu do książki.
Właściwości wymagane | |
---|---|
@type |
Ustaw jako: |
lender |
System bibliotek, który umożliwia dostęp do danego wydania. |
lender.@id |
Odwołania do identyfikatora elementu |
lender.@type |
Ustaw jako: |
target |
Specyfikacja precyzyjnego linku z informacjami o obsługiwanej platformie. Aby zdefiniować precyzyjne linki dla różnych zestawów platform, określ tablicę Ta właściwość może być powtarzana. |
target.@type |
Ustaw jako: |
target.actionPlatform |
Platformy, w przypadku których dany precyzyjny link jest prawidłowy. Użyj jednej z tych wartości:
Ta właściwość może być powtarzana. |
target.urlTemplate |
Link prowadzący użytkowników bezpośrednio do treści strony docelowej książki. |
Przykładowy element BorrowAction
:
"potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrow?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } }
Przykładowy element BorrowAction
z kilkoma właściwościami EntryPoint
:
"potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": [ { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrow?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform" ] }, { "@type": "EntryPoint", ` "urlTemplate": "https://example.com/mobile/borrow?bookId=170", "actionPlatform": [ "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } ] }
Element Library
Pełną definicję elementów Library
znajdziesz na schema.org/Library. Najważniejsze są jednak tylko poniższe właściwości. W przypadku każdej biblioteki, którą chcesz uwzględnić w pliku danych, musisz określić wymagane właściwości.
Możesz też zdefiniować właściwości zalecane, by wzbogacić informacje i zwiększyć w ten sposób wygodę użytkowników.
Ten element Library
jest typem elementu Library
najwyższego poziomu. Jest to abstrakcyjny konstrukt, który składa się z elementu LibrarySystem
i każdego elementu Library (member)
niższego poziomu w ramach LibrarySystem
.
Plik danych Library
różni się od pliku danych Book
. Dlatego każdy zaimplementowany plik danych Library
musi być całkowicie niezależny od pliku danych Book
.
Więcej informacji znajdziesz w sekcji Tworzenie pliku danych.
LibrarySystem
Element LibrarySystem
odpowiada wspólnej sieci oddziałów biblioteki.
Właściwości wymagane | |
---|---|
@context
|
Text
Ustaw jako: |
@id
|
URL
Niepowtarzalny globalnie identyfikator systemu bibliotek w formacie adresu URL. Ten identyfikator musi być stały i nie może zmieniać się w czasie. Jest traktowany jako ciąg nieprzejrzysty, więc nie musi być działającym linkiem. Domena użyta w wartości |
@type
|
Text
Ustaw jako: |
additionalProperty
|
PropertyValue
Dodatkowa właściwość, która określa typ biblioteki. |
additionalProperty.@type
|
Text
Ustaw jako: |
additionalProperty.name
|
Text
Ustaw jako: |
additionalProperty.value
|
Text
Typ biblioteki. Użyj jednej z tych wartości:
|
member
|
Library
Oddział lub oddziały danego systemu bibliotek. |
name
|
Text
Nazwa systemu bibliotek. Na przykład: |
url
|
URL
Adres URL, pod którym przedstawiono lub opisano dany system bibliotek. Ten link pomaga wyszukiwarce Google dokładnie uzgodnić zawartość Twojego pliku danych z zawartością baz danych Google. W przypadku rzeczywistej strony docelowej wyszukiwarka Google użyje adresu URL podanego jako |
Library
(member
)
Właściwość member
elementu LibrarySystem
korzysta z elementu Library (member)
.
Library (member)
odpowiada pojedynczemu oddziałowi danego systemu bibliotek.
Właściwości wymagane | |
---|---|
@id
|
URL
Unikalny globalnie identyfikator oddziału biblioteki w formacie URL. Ten identyfikator musi być stały i nie może zmieniać się w czasie. Jest traktowany jako ciąg nieprzejrzysty, więc nie musi być działającym linkiem. Domena użyta w wartości |
@type
|
Text
Ustaw jako: |
location
|
PostalAddress
Adres oddziału biblioteki. Nie wszystkie właściwości stosuje się we wszystkich krajach. W adresach bibliotek musisz jednak uwzględnić maksymalną liczbę stosowanych właściwości. Przykładowy element { "@type": "Library", "@id": "https://example.com/library-branches/1001", "name": "Campbell Library", "location": { "@type": "PostalAddress", "streetAddress": "77 Harrison Ave", "addressLocality": "Campbell", "addressRegion": "CA", "postalCode": "95008", "addressCountry": "US" } } Przykładowy element { "@type": "Library", "@id": "https://example.com/library-branches/1003", "name": "Tokyo Metropolitan Central Library", "location": { "@type": "PostalAddress", "streetAddress": "7-13-5 Minamiazabu, Minato City", "addressLocality": "Tokyo", "postalCode": "106-0047", "addressCountry": "JP" } } |
location.@type
|
Text
Ustaw jako: |
location.addressCountry
|
Text
Kod kraju w formacie ISO 3166-1. Na przykład: |
location.addressLocality
|
Text
Miejscowość. Na przykład: |
location.addressRegion
|
Text
Region. Na przykład: |
location.postalCode
|
Text
Kod pocztowy. Na przykład: |
location.streetAddress
|
Text
Ulica i numer. Na przykład: |
name
|
Text
Nazwa oddziału biblioteki. |
Przykładowy plik danych LibrarySystem
w formacie JSON
{ "@context": "https://schema.org", "@type":"LibrarySystem", "@id":"https://example.com/library-systems/100", "name":"Santa Clara County Library District", "additionalProperty":[ { "@type":"PropertyValue", "name":"librarytype", "value":"public" } ], "member":[ { "@type":"Library", "@id":"https://example.com/library-branches/1001", "name":"Campbell Library", "location":{ "@type":"PostalAddress", "streetAddress":"77 Harrison Ave", "addressLocality":"Campbell", "addressRegion":"CA", "postalCode":"95008", "addressCountry":"US" } }, { "@type":"Library", "@id":"https://example.com/library-branches/1002", "name":"Gilroy Library", "location":{ "@type":"PostalAddress", "streetAddress":"350 W 6th St", "addressLocality":"Gilroy", "addressRegion":"CA", "postalCode":"95020", "addressCountry":"US" } } ] }