ALPS Book Store

オンライン書店の書籍カタログを管理し、ユーザーの購買フローを定義するためのALPSプロファイル。このプロファイルはRESTfulなAPIとUIの両方のためのセマンティクス定義を提供します。

View:
Tags:
Semantic
Safe
Unsafe
Idempotent

Semantic Descriptors

Type ID Title Contained Extra Info
author 著者 def:schema.org/authortag:catalogdoc:書籍の著者名。複数の著者がいる場合はカンマ区切りで記載。
Book 書籍 id
title
author
isbn
price
category
goToCatalog
doAddToCart
def:schema.org/Booktag:catalogdoc:個別の書籍情報を表示する画面。詳細情報、レビュー、関連書籍などを表示。この画面からカートに追加可能。
Catalog 書籍カタログ Book
goListBooks
goSearchBooks
goGetCategories
goToBookDetails
goToCart
def:schema.org/CollectionPagetag:catalogdoc:全書籍の一覧表示画面。カテゴリー別フィルタリングやキーワード検索、ソート機能を提供。デフォルトでは新着順に表示。
Category カテゴリー id
title
def:schema.org/Categorytag:catalogdoc:書籍のジャンル分類。階層構造を持ち、親カテゴリーと子カテゴリーが存在する場合がある。
category カテゴリー def:schema.org/categorytag:catalogdoc:書籍のジャンルまたはカテゴリー。複数のカテゴリーに属する場合あり。
Checkout 決済画面 goToCart
doUserInfo
doShippingInfo
doPaymentInfo
doPlaceOrder
tag:checkoutdoc:購入手続き画面。ユーザー情報、配送先、支払い方法を入力する。注文確定前に最終確認を表示。
doAddToCart カートに追加 id
quantity
tag:cartrel:collectionrt:ShoppingCartdoc:指定された書籍をショッピングカートに追加する。既にカートに存在する場合は数量が加算される。在庫数を超える注文はエラーとなる。
doPaymentInfo 支払い情報の入力 paymentMethod tag:paymentrt:Checkoutdoc:注文の支払い方法を選択し、必要な支払い情報を入力する。クレジットカード選択時はカード情報の入力と検証を行う。
doPlaceOrder 注文の確定 tag:orderrt:OrderConfirmationdoc:ユーザーの入力情報を基に注文を確定し、注文確認画面に遷移する。支払い処理が実行され、在庫が確保される。この操作は取り消せない。
doRemoveFromCart カートからアイテムを削除 id tag:cartrt:ShoppingCartdoc:指定されたアイテムをカートから完全に削除する。該当アイテムがカートに存在しない場合は何も変更されない。
doShippingInfo 配送情報の入力 shippingAddress tag:shippingrt:Checkoutdoc:商品の配送先住所を入力する。郵便番号検索による住所自動入力機能あり。
doUpdateQuantity カート内アイテムの数量更新 id
quantity
tag:cartrt:ShoppingCartdoc:カート内の特定商品の数量を更新する。0以下の数値は指定できない。在庫数を超える数量はエラーとなる。
doUserInfo ユーザー情報の入力 userName
userEmail
tag:customerrt:Checkoutdoc:注文者の氏名とメールアドレスを入力する。メールアドレスは正規表現による検証が行われる。
goGetBookDetails 書籍詳細の取得 id tag:catalogrel:itemrt:Bookdoc:指定された書籍IDに基づいて、特定の書籍の詳細情報を取得する。在庫状況や関連書籍の情報も含まれる。
goGetCategories カテゴリー一覧の取得 tag:catalogrel:collectionrt:Catalogdoc:利用可能なすべての書籍カテゴリーの一覧を取得する。階層構造を持つカテゴリーの場合は親子関係も返される。
goListBooks 書籍一覧の取得 tag:catalogrel:collectionrt:Catalogdoc:カタログ内のすべての書籍一覧を取得する。ページネーション(デフォルト20件/ページ)やソート順(新着順、価格順、人気順等)の指定が可能。
goListCartItems カート内アイテム一覧の取得 tag:cartrel:collectionrt:ShoppingCartdoc:現在のショッピングカート内のすべての商品と、その数量、小計、合計金額を取得する。
goOrderDetails 注文詳細の表示 tag:orderrt:OrderConfirmationdoc:確定した注文の詳細情報を表示する。注文番号、購入商品一覧、合計金額、配送先、支払い方法などが含まれる。
goSearchBooks 書籍の検索 query tag:catalogrel:collectionrt:Catalogdoc:指定された検索クエリに基づいて書籍を検索する。タイトル、著者名、内容説明、ISBNなどの複数フィールドから検索可能。
goToBookDetails 書籍詳細画面に移動 id rt:Bookdoc:選択した書籍の詳細情報画面に遷移する。書籍IDを指定する必要がある。
goToCart カート画面に移動 rt:ShoppingCartdoc:現在のショッピングカートの内容を表示する画面に遷移する。
goToCatalog カタログ画面に移動 rt:Catalogdoc:書籍カタログ一覧画面に遷移する。全書籍が表示される。
goToCheckout 決済画面に移動 rt:Checkoutdoc:カートの内容を確認し、購入手続きを行う画面に遷移する。カートが空の場合は遷移できない。
goToHome ホーム画面に移動 rt:Homedoc:アプリケーションのホーム画面に遷移する。どの画面からでもアクセス可能。
Home ホーム画面 goToCatalog
goToCart
tag:navigationdoc:アプリケーションの開始点となるホーム画面。サイト全体のナビゲーションとプロモーション情報を表示。
id 識別子 def:schema.org/identifiertag:coredoc:各リソースの一意の識別子。UUIDまたは自動採番された整数値。
isbn ISBN def:schema.org/isbntag:catalogdoc:書籍の国際標準図書番号。ISBN-13形式(ハイフン付き)で記載。
OrderConfirmation 注文確認画面 goOrderDetails
goToHome
tag:orderdoc:注文完了後の確認画面。注文番号、合計金額、配送予定日等の情報を表示。確認メールが自動送信される。
paymentMethod 支払い方法 def:schema.org/paymentMethodtag:paymentdoc:注文の支払い方法。クレジットカード、代金引換、銀行振込等から選択。
price 価格 def:schema.org/pricetag:commercedoc:書籍の販売価格。税抜き価格で、通貨単位は円(JPY)。
quantity 数量 def:schema.org/quantityValuetag:commercedoc:カート内の書籍の数量。1以上の整数値。
query 検索クエリ tag:catalogdoc:書籍検索に使用するキーワードや条件。タイトル、著者名、ISBNなどで検索可能。
shippingAddress 配送先住所 def:schema.org/addresstag:shippingdoc:商品の配送先住所。郵便番号、都道府県、市区町村、番地、建物名等を含む。
ShoppingCart ショッピングカート goListCartItems
goToCheckout
goToCatalog
doUpdateQuantity
doRemoveFromCart
def:schema.org/ShoppingCarttag:cartdoc:ユーザーが購入予定の書籍が入るカート。数量変更、削除、合計金額の確認ができる。セッションベースで管理。
title タイトル def:schema.org/nametag:catalogdoc:書籍のタイトルまたはカテゴリー名。200文字以内の文字列。
totalAmount 合計金額 def:schema.org/totalPricetag:commercedoc:注文またはカート内の全商品の合計金額。税込み表示。
userEmail メールアドレス def:schema.org/emailtag:customerdoc:注文者の連絡先メールアドレス。注文確認メールの送信先となる。
userName ユーザー名 def:schema.org/nametag:customerdoc:注文者の氏名。姓名をスペースで区切って記載。

Links


Profile

<?xml version="1.0" encoding="UTF-8"?>
<alps
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="https://alps-io.github.io/schemas/alps.xsd">
    <title>ALPS Book Store</title>
    <doc>オンライン書店の書籍カタログを管理し、ユーザーの購買フローを定義するためのALPSプロファイル。このプロファイルはRESTfulなAPIとUIの両方のためのセマンティクス定義を提供します。</doc>
    <link href="https://github.com/example/online-bookstore-api/issues" rel="issue"/>

    <!-- オントロジー -->
    <descriptor id="id" def="https://schema.org/identifier" title="識別子" tag="core">
        <doc>各リソースの一意の識別子。UUIDまたは自動採番された整数値。</doc>
    </descriptor>
    <descriptor id="title" def="https://schema.org/name" title="タイトル" tag="catalog">
        <doc>書籍のタイトルまたはカテゴリー名。200文字以内の文字列。</doc>
    </descriptor>
    <descriptor id="author" def="https://schema.org/author" title="著者" tag="catalog">
        <doc>書籍の著者名。複数の著者がいる場合はカンマ区切りで記載。</doc>
    </descriptor>
    <descriptor id="isbn" def="https://schema.org/isbn" title="ISBN" tag="catalog">
        <doc>書籍の国際標準図書番号。ISBN-13形式(ハイフン付き)で記載。</doc>
    </descriptor>
    <descriptor id="price" def="https://schema.org/price" title="価格" tag="commerce">
        <doc>書籍の販売価格。税抜き価格で、通貨単位は円(JPY)。</doc>
    </descriptor>
    <descriptor id="category" def="https://schema.org/category" title="カテゴリー" tag="catalog">
        <doc>書籍のジャンルまたはカテゴリー。複数のカテゴリーに属する場合あり。</doc>
    </descriptor>
    <descriptor id="quantity" def="https://schema.org/quantityValue" title="数量" tag="commerce">
        <doc>カート内の書籍の数量。1以上の整数値。</doc>
    </descriptor>
    <descriptor id="totalAmount" def="https://schema.org/totalPrice" title="合計金額" tag="commerce">
        <doc>注文またはカート内の全商品の合計金額。税込み表示。</doc>
    </descriptor>
    <descriptor id="userName" def="https://schema.org/name" title="ユーザー名" tag="customer">
        <doc>注文者の氏名。姓名をスペースで区切って記載。</doc>
    </descriptor>
    <descriptor id="userEmail" def="https://schema.org/email" title="メールアドレス" tag="customer">
        <doc>注文者の連絡先メールアドレス。注文確認メールの送信先となる。</doc>
    </descriptor>
    <descriptor id="shippingAddress" def="https://schema.org/address" title="配送先住所" tag="shipping">
        <doc>商品の配送先住所。郵便番号、都道府県、市区町村、番地、建物名等を含む。</doc>
    </descriptor>
    <descriptor id="paymentMethod" def="https://schema.org/paymentMethod" title="支払い方法" tag="payment">
        <doc>注文の支払い方法。クレジットカード、代金引換、銀行振込等から選択。</doc>
    </descriptor>
    <descriptor id="query" title="検索クエリ" tag="catalog">
        <doc>書籍検索に使用するキーワードや条件。タイトル、著者名、ISBNなどで検索可能。</doc>
    </descriptor>

    <!-- タクソノミー -->
    <descriptor id="Home" title="ホーム画面" tag="navigation">
        <doc>アプリケーションの開始点となるホーム画面。サイト全体のナビゲーションとプロモーション情報を表示。</doc>
        <descriptor href="#goToCatalog"/>
        <descriptor href="#goToCart"/>
    </descriptor>

    <descriptor id="Catalog" def="https://schema.org/CollectionPage" title="書籍カタログ" tag="catalog">
        <doc>全書籍の一覧表示画面。カテゴリー別フィルタリングやキーワード検索、ソート機能を提供。デフォルトでは新着順に表示。</doc>
        <descriptor href="#goListBooks"/>
        <descriptor href="#goSearchBooks"/>
        <descriptor href="#goGetCategories"/>
        <descriptor href="#goToBookDetails"/>
        <descriptor href="#goToCart"/>
        <descriptor href="#Book"/>
    </descriptor>

    <descriptor id="Book" def="https://schema.org/Book" title="書籍" tag="catalog">
        <doc>個別の書籍情報を表示する画面。詳細情報、レビュー、関連書籍などを表示。この画面からカートに追加可能。</doc>
        <descriptor href="#id"/>
        <descriptor href="#title"/>
        <descriptor href="#author"/>
        <descriptor href="#isbn"/>
        <descriptor href="#price"/>
        <descriptor href="#category"/>
        <descriptor href="#doAddToCart"/>
        <descriptor href="#goToCatalog"/>
    </descriptor>

    <descriptor id="Category" def="https://schema.org/Category" title="カテゴリー" tag="catalog">
        <doc>書籍のジャンル分類。階層構造を持ち、親カテゴリーと子カテゴリーが存在する場合がある。</doc>
        <descriptor href="#id"/>
        <descriptor href="#title"/>
    </descriptor>

    <descriptor id="ShoppingCart" def="https://schema.org/ShoppingCart" title="ショッピングカート" tag="cart">
        <doc>ユーザーが購入予定の書籍が入るカート。数量変更、削除、合計金額の確認ができる。セッションベースで管理。</doc>
        <descriptor href="#goListCartItems"/>
        <descriptor href="#doUpdateQuantity"/>
        <descriptor href="#doRemoveFromCart"/>
        <descriptor href="#goToCheckout"/>
        <descriptor href="#goToCatalog"/>
    </descriptor>

    <descriptor id="Checkout" title="決済画面" tag="checkout">
        <doc>購入手続き画面。ユーザー情報、配送先、支払い方法を入力する。注文確定前に最終確認を表示。</doc>
        <descriptor href="#doUserInfo"/>
        <descriptor href="#doShippingInfo"/>
        <descriptor href="#doPaymentInfo"/>
        <descriptor href="#doPlaceOrder"/>
        <descriptor href="#goToCart"/>
    </descriptor>

    <descriptor id="OrderConfirmation" title="注文確認画面" tag="order">
        <doc>注文完了後の確認画面。注文番号、合計金額、配送予定日等の情報を表示。確認メールが自動送信される。</doc>
        <descriptor href="#goOrderDetails"/>
        <descriptor href="#goToHome"/>
    </descriptor>

    <!-- コレオグラフィー -->
    <descriptor id="goToHome" type="safe" rt="#Home" title="ホーム画面に移動">
        <doc>アプリケーションのホーム画面に遷移する。どの画面からでもアクセス可能。</doc>
    </descriptor>
    <descriptor id="goToCatalog" type="safe" rt="#Catalog" title="カタログ画面に移動">
        <doc>書籍カタログ一覧画面に遷移する。全書籍が表示される。</doc>
    </descriptor>
    <descriptor id="goToBookDetails" type="safe" rt="#Book" title="書籍詳細画面に移動">
        <doc>選択した書籍の詳細情報画面に遷移する。書籍IDを指定する必要がある。</doc>
        <descriptor href="#id"/>
    </descriptor>
    <descriptor id="goToCart" type="safe" rt="#ShoppingCart" title="カート画面に移動">
        <doc>現在のショッピングカートの内容を表示する画面に遷移する。</doc>
    </descriptor>
    <descriptor id="goToCheckout" type="safe" rt="#Checkout" title="決済画面に移動">
        <doc>カートの内容を確認し、購入手続きを行う画面に遷移する。カートが空の場合は遷移できない。</doc>
    </descriptor>

    <descriptor id="goListBooks" type="safe" rt="#Catalog" rel="collection" title="書籍一覧の取得" tag="catalog">
        <doc>カタログ内のすべての書籍一覧を取得する。ページネーション(デフォルト20件/ページ)やソート順(新着順、価格順、人気順等)の指定が可能。</doc>
    </descriptor>
    <descriptor id="goSearchBooks" type="safe" rt="#Catalog" rel="collection" title="書籍の検索" tag="catalog">
        <doc>指定された検索クエリに基づいて書籍を検索する。タイトル、著者名、内容説明、ISBNなどの複数フィールドから検索可能。</doc>
        <descriptor href="#query"/>
    </descriptor>
    <descriptor id="goGetCategories" type="safe" rt="#Catalog" rel="collection" title="カテゴリー一覧の取得" tag="catalog">
        <doc>利用可能なすべての書籍カテゴリーの一覧を取得する。階層構造を持つカテゴリーの場合は親子関係も返される。</doc>
    </descriptor>
    <descriptor id="goGetBookDetails" type="safe" rt="#Book" rel="item" title="書籍詳細の取得" tag="catalog">
        <doc>指定された書籍IDに基づいて、特定の書籍の詳細情報を取得する。在庫状況や関連書籍の情報も含まれる。</doc>
        <descriptor href="#id"/>
    </descriptor>

    <descriptor id="doAddToCart" type="unsafe" rt="#ShoppingCart" rel="collection" title="カートに追加" tag="cart">
        <doc>指定された書籍をショッピングカートに追加する。既にカートに存在する場合は数量が加算される。在庫数を超える注文はエラーとなる。</doc>
        <descriptor href="#id"/>
        <descriptor href="#quantity"/>
    </descriptor>
    <descriptor id="goListCartItems" type="safe" rt="#ShoppingCart" rel="collection" title="カート内アイテム一覧の取得" tag="cart">
        <doc>現在のショッピングカート内のすべての商品と、その数量、小計、合計金額を取得する。</doc>
    </descriptor>
    <descriptor id="doUpdateQuantity" type="idempotent" rt="#ShoppingCart" title="カート内アイテムの数量更新" tag="cart">
        <doc>カート内の特定商品の数量を更新する。0以下の数値は指定できない。在庫数を超える数量はエラーとなる。</doc>
        <descriptor href="#id"/>
        <descriptor href="#quantity"/>
    </descriptor>
    <descriptor id="doRemoveFromCart" type="idempotent" rt="#ShoppingCart" title="カートからアイテムを削除" tag="cart">
        <doc>指定されたアイテムをカートから完全に削除する。該当アイテムがカートに存在しない場合は何も変更されない。</doc>
        <descriptor href="#id"/>
    </descriptor>

    <descriptor id="doUserInfo" type="unsafe" rt="#Checkout" title="ユーザー情報の入力" tag="customer">
        <doc>注文者の氏名とメールアドレスを入力する。メールアドレスは正規表現による検証が行われる。</doc>
        <descriptor href="#userName"/>
        <descriptor href="#userEmail"/>
    </descriptor>
    <descriptor id="doShippingInfo" type="unsafe" rt="#Checkout" title="配送情報の入力" tag="shipping">
        <doc>商品の配送先住所を入力する。郵便番号検索による住所自動入力機能あり。</doc>
        <descriptor href="#shippingAddress"/>
    </descriptor>
    <descriptor id="doPaymentInfo" type="unsafe" rt="#Checkout" title="支払い情報の入力" tag="payment">
        <doc>注文の支払い方法を選択し、必要な支払い情報を入力する。クレジットカード選択時はカード情報の入力と検証を行う。</doc>
        <descriptor href="#paymentMethod"/>
    </descriptor>
    <descriptor id="doPlaceOrder" type="unsafe" rt="#OrderConfirmation" title="注文の確定" tag="order">
        <doc>ユーザーの入力情報を基に注文を確定し、注文確認画面に遷移する。支払い処理が実行され、在庫が確保される。この操作は取り消せない。</doc>
    </descriptor>

    <descriptor id="goOrderDetails" type="safe" rt="#OrderConfirmation" title="注文詳細の表示" tag="order">
        <doc>確定した注文の詳細情報を表示する。注文番号、購入商品一覧、合計金額、配送先、支払い方法などが含まれる。</doc>
    </descriptor>
</alps>